Merge branch 'feature/files' into feature/files-favorites

# Conflicts:
#	products/ASC.Files/Client/yarn.lock
This commit is contained in:
Vladislav Makhov 2020-10-06 11:40:12 +03:00
commit 1992be53b8
65 changed files with 2687 additions and 1579 deletions

View File

@ -39,13 +39,13 @@ namespace ASC.Security.Cryptography
public PasswordHasher(IConfiguration configuration, MachinePseudoKeys machinePseudoKeys)
{
if (!int.TryParse(configuration["core:password:size"], out var size)) size = 256;
PasswordHashSize = size;
Size = size;
if (!int.TryParse(configuration["core.password.iterations"], out var iterations)) iterations = 100000;
PasswordHashIterations = iterations;
Iterations = iterations;
PasswordHashSalt = (configuration["core:password:salt"] ?? "").Trim();
if (string.IsNullOrEmpty(PasswordHashSalt))
Salt = (configuration["core:password:salt"] ?? "").Trim();
if (string.IsNullOrEmpty(Salt))
{
var salt = Hasher.Hash("{9450BEF7-7D9F-4E4F-A18A-971D8681722D}", HashAlg.SHA256);
@ -53,25 +53,25 @@ namespace ASC.Security.Cryptography
Encoding.UTF8.GetString(machinePseudoKeys.GetMachineConstant()),
salt,
KeyDerivationPrf.HMACSHA256,
PasswordHashIterations,
PasswordHashSize / 8);
PasswordHashSalt = BitConverter.ToString(PasswordHashSaltBytes).Replace("-", string.Empty).ToLower();
Iterations,
Size / 8);
Salt = BitConverter.ToString(PasswordHashSaltBytes).Replace("-", string.Empty).ToLower();
}
}
public int PasswordHashSize
public int Size
{
get;
private set;
}
public int PasswordHashIterations
public int Iterations
{
get;
private set;
}
public string PasswordHashSalt
public string Salt
{
get;
private set;
@ -81,14 +81,14 @@ namespace ASC.Security.Cryptography
{
if (string.IsNullOrWhiteSpace(password)) password = Guid.NewGuid().ToString();
var salt = new UTF8Encoding(false).GetBytes(PasswordHashSalt);
var salt = new UTF8Encoding(false).GetBytes(Salt);
var hashBytes = KeyDerivation.Pbkdf2(
password,
salt,
KeyDerivationPrf.HMACSHA256,
PasswordHashIterations,
PasswordHashSize / 8);
Iterations,
Size / 8);
var hash = BitConverter.ToString(hashBytes).Replace("-", string.Empty).ToLower();

View File

@ -465,7 +465,7 @@ namespace ASC.Core.Billing
var r = CoreDbContext.Tariffs
.Where(r => r.Tenant == tenant)
.OrderByDescending(r => r.Id)
.SingleOrDefault();
.FirstOrDefault();
return r != null ? Tuple.Create(r.Tariff, r.Stamp.Year < 9999 ? r.Stamp : DateTime.MaxValue) : null;
}

View File

@ -67,7 +67,6 @@ namespace ASC.Core.Data
public class EFUserService : IUserService
{
public Expression<Func<User, UserInfo>> FromUserToUserInfo { get; set; }
public Expression<Func<DbUserSecurity, UserInfo>> FromDbUserSecurityToUserInfo { get; set; }
public Func<UserInfo, User> FromUserInfoToUser { get; set; }
public Expression<Func<DbGroup, Group>> FromDbGroupToGroup { get; set; }
public Func<Group, DbGroup> FromGroupToDbGroup { get; set; }
@ -111,9 +110,6 @@ namespace ASC.Core.Data
Contacts = user.Contacts
};
var fromUserToUserInfo = FromUserToUserInfo.Compile();
FromDbUserSecurityToUserInfo = r => fromUserToUserInfo(r.User);
FromUserInfoToUser = user => new User
{
ActivationStatus = user.ActivationStatus,
@ -246,7 +242,7 @@ namespace ASC.Core.Data
q = q.Where(r => r.User.Tenant == tenant);
}
return q.Select(FromDbUserSecurityToUserInfo).FirstOrDefault();
return q.Select(r => r.User).Select(FromUserToUserInfo).FirstOrDefault();
}
else
{
@ -576,7 +572,8 @@ namespace ASC.Core.Data
Tenant = tenant,
UserId = id,
PwdHash = h1,
PwdHashSha512 = null //todo: remove
PwdHashSha512 = null,//todo: remove
LastModified = DateTime.UtcNow
};
UserDbContext.AddOrUpdate(r => r.UserSecurity, us);

View File

@ -30,6 +30,8 @@ namespace ASC.Core.Common.EF.Model
[Column("creation_date")]
public DateTime CreationDate { get; set; }
public string Attachments { get; set; }
[Column("auto_submitted")]
public string AutoSubmitted { get; set; }
}
}

View File

@ -17,12 +17,18 @@ map $uri $basename {
~/(?<captured_basename>[^/]*)$ $captured_basename;
}
map $request_uri $header_x_frame_options {
~*^/(favicon\.ico|products\/files\/share|products\/files\/saveas|products\/files\/filechoice|products\/files\/doceditor|thirdparty\/plugin) "";
default "SAMEORIGIN";
}
include /etc/nginx/includes/onlyoffice-*.conf;
server {
listen 8092;
add_header Access-Control-Allow-Origin *;
add_header X-Frame-Options $header_x_frame_options;
large_client_header_buffers 4 16k;

View File

@ -19,7 +19,7 @@
<link rel="apple-touch-icon" href="icon.png">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<link href='https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i' rel='stylesheet' type='text/css'></link>
<script type="text/javascript" src="https://dotnet.onlyoffice.com/ds-vpath/web-apps/apps/api/documents/api.js?ver=10.0.1.875"></script>
<script type="text/javascript" src="https://dotnet.onlyoffice.com/ds-vpath/web-apps/apps/api/documents/api.js"></script>
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.

View File

@ -33,6 +33,10 @@ class PureEditor extends React.Component {
const urlParams = getObjectByLocation(window.location);
const fileId = urlParams.fileId || null;
const vh = window.innerHeight * 0.01;
document.documentElement.style.setProperty('--vh', `${vh}px`);
const wrapperStyle = {
height: "100vh",
height: "calc(var(--vh, 1vh) * 100)"

View File

@ -114,13 +114,17 @@ class FilesRowContent extends React.PureComponent {
if (itemTitle.trim() === '')
return this.completeAction(e);
let newTab = item.fileExst
? window.open('about:blank', '_blank')
: null;
!item.fileExst
? createFolder(item.parentId, itemTitle)
.then(() => this.completeAction(e)).finally(() => setIsLoading(false))
: createFile(item.parentId, `${itemTitle}.${item.fileExst}`)
.then((file) => {
window.open(file.webUrl, "_blank")
this.completeAction(e)
newTab.location = file.webUrl;
this.completeAction(e);
}).finally(() => setIsLoading(false))
}
@ -147,11 +151,10 @@ class FilesRowContent extends React.PureComponent {
}
cancelUpdateItem = (e) => {
//this.setState({ loading: false });
this.completeAction(e);
}
onClickUpdateItem = () => {
onClickUpdateItem = (e) => {
(this.props.fileAction.type === FileAction.Create)
? this.createItem()
: this.updateItem();

View File

@ -1528,17 +1528,17 @@
"@svgr/plugin-svgo" "^4.3.1"
loader-utils "^1.2.3"
"@tanem/svg-injector@^8.0.68":
version "8.0.69"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.69.tgz#ef41afc98c3c706ef16f7468991f558a82e567c9"
integrity sha512-/F4v9aXqvoa0bg+m0m/eRHnYkPxkkAfakLcB/hRIHQ9Fqwuxz1JBDxQ0xcgNkEJI4dN9uCCvAIUIoUoQieAp6g==
"@tanem/svg-injector@^8.0.70":
version "8.0.71"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.71.tgz#810e1b0de741c774d68722499a4a48fb61dfa9e9"
integrity sha512-JOlNQDnhWjWyR9g2P3cYA+CPiBstxS0rLoSFOFtHxavpwwPiQf2JtyqAqMVxgR8XV1USadLrTFUtk4fEq3Pxow==
dependencies:
"@babel/runtime" "^7.11.2"
"@types/babel__core@^7.1.0":
version "7.1.9"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d"
integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==
version "7.1.10"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.10.tgz#ca58fc195dd9734e77e57c6f2df565623636ab40"
integrity sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@ -1547,32 +1547,27 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
version "7.6.1"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
version "7.6.2"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.0.2"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
version "7.0.3"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.3.tgz#b8aaeba0a45caca7b56a5de9459872dde3727214"
integrity sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.14.tgz#e99da8c075d4fb098c774ba65dabf7dc9954bd13"
integrity sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==
version "7.0.15"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
dependencies:
"@babel/types" "^7.3.0"
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/eslint-visitor-keys@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
@ -1627,9 +1622,9 @@
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*":
version "14.11.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
version "14.11.2"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.2.tgz#2de1ed6670439387da1c9f549a2ade2b0a799256"
integrity sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==
"@types/parse-json@^4.0.0":
version "4.0.0"
@ -1659,9 +1654,9 @@
integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
version "13.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.10.tgz#e77bf3fc73c781d48c2eb541f87c453e321e5f4b"
integrity sha512-MU10TSgzNABgdzKvQVW1nuuT+sgBMWeXNc3XOs5YXV5SDAK+PPja2eUuBNB9iqElu03xyEDqlnGw0jgl4nbqGQ==
version "13.0.11"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.11.tgz#def2f0c93e4bdf2c61d7e34899b17e34be28d3b1"
integrity sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==
dependencies:
"@types/yargs-parser" "*"
@ -1855,9 +1850,9 @@
"@xtuc/long" "4.2.2"
"@welldone-software/why-did-you-render@^4.2.5":
version "4.3.1"
resolved "https://registry.yarnpkg.com/@welldone-software/why-did-you-render/-/why-did-you-render-4.3.1.tgz#f344647cf826117431da7ab4c70cf28a2cf578a3"
integrity sha512-1Axk7YWHbXlOgMJ1Wmal7Nmd8a7k+VLr7YFwQsY7CB4SsjJCOyyjbnLLZQ4t6ojw4Wn1suqhcj8leBPMwKjzmA==
version "4.3.2"
resolved "https://registry.yarnpkg.com/@welldone-software/why-did-you-render/-/why-did-you-render-4.3.2.tgz#db1c700df1729402f2ceacf05cebd72dca30f1af"
integrity sha512-pzaFmUUH+FjbsDgcMB1xNPncIaxibvo0FLbGySLIh+v+7Bp5pqSJFO6zlqo4orPLm3nAdYEgL2vrlj8befoypg==
dependencies:
lodash "^4"
@ -1918,14 +1913,14 @@ acorn@^5.5.3:
integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
acorn@^6.0.1, acorn@^6.0.4, acorn@^6.2.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
version "6.4.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
acorn@^7.1.0, acorn@^7.1.1:
version "7.4.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c"
integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==
version "7.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
add-dom-event-listener@^1.1.0:
version "1.1.0"
@ -2048,11 +2043,10 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
color-convert "^1.9.0"
ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
"@types/color-name" "^1.1.1"
color-convert "^2.0.1"
anymatch@^2.0.0:
@ -2184,7 +2178,7 @@ asap@~2.0.6:
integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
"asc-web-common@file:../../../packages/asc-web-common":
version "1.0.243"
version "1.0.246"
dependencies:
axios "^0.19.1"
history "4.10.1"
@ -2194,9 +2188,10 @@ asap@~2.0.6:
react-viewer "^3.2.1"
react-window-infinite-loader "^1.0.5"
screenfull "^5.0.2"
sjcl "^1.0.8"
"asc-web-components@file:../../../packages/asc-web-components":
version "1.0.456"
version "1.0.457"
dependencies:
email-addresses "^3.1.0"
html-to-react "^1.4.2"
@ -2751,12 +2746,12 @@ browserslist@4.10.0:
pkg-up "^3.1.0"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.8.5, browserslist@^4.9.1:
version "4.14.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.3.tgz#381f9e7f13794b2eb17e1761b4f118e8ae665a53"
integrity sha512-GcZPC5+YqyPO4SFnz48/B0YaCwS47Q9iPChRGi6t7HhflKBcINzFrJvRfC+jp30sRMKxF+d4EHGs27Z0XP1NaQ==
version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies:
caniuse-lite "^1.0.30001131"
electron-to-chromium "^1.3.570"
caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.571"
escalade "^3.1.0"
node-releases "^1.1.61"
@ -2946,10 +2941,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001131:
version "1.0.30001132"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001132.tgz#309279274f10d3aa736aa91fa269fcc8d0cd7ef9"
integrity sha512-zk5FXbnsmHa0Ktc/NOZJRr+ilXva+2KFJuRiQfnjkxJfV/7DYP5C27lSQF++/veCUzVWE5xecZnSBJjf6fSwJA==
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001143"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001143.tgz#560f2cfb9f313d1d7e52eb8dac0e4e36c8821c0d"
integrity sha512-p/PO5YbwmCpBJPxjOiKBvAlUPgF8dExhfEpnsH+ys4N/791WHrYrGg0cyHiAURl5hSbx5vIcjKmQAP6sHDYH3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -3689,9 +3684,9 @@ css-what@2.1:
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
css-what@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39"
integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==
version "3.4.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.1.tgz#81cb70b609e4b1351b1e54cbc90fd9c54af86e2e"
integrity sha512-wHOppVDKl4vTAOWzJt5Ek37Sgd9qq1Bmj/T1OjvicWbU5W7ru7Pqbn0Jdqii3Drx/h+dixHKXNhZYx7blthL7g==
css@^2.0.0:
version "2.2.4"
@ -4148,10 +4143,10 @@ domhandler@^2.3.0:
dependencies:
domelementtype "1"
domhandler@^3.0, domhandler@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
domhandler@^3.0.0, domhandler@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
dependencies:
domelementtype "^2.0.1"
@ -4171,14 +4166,14 @@ domutils@^1.5.1, domutils@^1.7.0:
dom-serializer "0"
domelementtype "1"
domutils@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.3.0.tgz#6469c63a3da2de0c3016f3a59e6a969e10705bce"
integrity sha512-xWC75PM3QF6MjE5e58OzwTX0B/rPQnlqH0YyXB/c056RtVJA+eu60da2I/bdnEHzEYC00g8QaZUlAbqOZVbOsw==
domutils@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b"
integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.0.1"
domhandler "^3.0.0"
domhandler "^3.3.0"
dot-case@^3.0.3:
version "3.0.3"
@ -4238,10 +4233,10 @@ ejs@^2.6.1:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.570:
version "1.3.570"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.570.tgz#3f5141cc39b4e3892a276b4889980dabf1d29c7f"
integrity sha512-Y6OCoVQgFQBP5py6A/06+yWxUZHDlNr/gNDGatjH8AZqXl8X0tE4LfjLJsXGz/JmWJz8a6K7bR1k+QzZ+k//fg==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.571:
version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
elliptic@^6.5.3:
version "6.5.3"
@ -4327,37 +4322,37 @@ error-ex@^1.2.0, error-ex@^1.3.1:
is-arrayish "^0.2.1"
es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5:
version "1.17.6"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
version "1.17.7"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-regex "^1.1.0"
object-inspect "^1.7.0"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.0:
version "1.18.0-next.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.0.tgz#b302834927e624d8e5837ed48224291f2c66e6fc"
integrity sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==
es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1:
version "1.18.0-next.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-callable "^1.2.2"
is-negative-zero "^2.0.0"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
@ -5614,14 +5609,14 @@ html-parse-stringify2@2.0.1:
void-elements "^2.0.1"
html-to-react@^1.4.2:
version "1.4.3"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.3.tgz#1430a1cb581ef29533892ec70a2fdc4554b17ffd"
integrity sha512-txe09A3vxW8yEZGJXJ1is5gGDfBEVACmZDSgwDyH5EsfRdOubBwBCg63ZThZP0xBn0UE4FyvMXZXmohusCxDcg==
version "1.4.4"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.4.tgz#dd5edb76ff28ab7fc34faabd91446bece292dc38"
integrity sha512-oE4GYH8c/gvFQwfNHBhg1LpfiPsQRKj0JQmvccvUHqyyF7U1H7UzZ7Z6CyF7okv1QFukyvjH9aAApNa4kYSO9g==
dependencies:
domhandler "^3.0"
htmlparser2 "^4.1.0"
domhandler "^3.3.0"
htmlparser2 "^5.0"
lodash.camelcase "^4.3.0"
ramda "^0.27"
ramda "^0.27.1"
html-webpack-plugin@4.0.0-beta.11:
version "4.0.0-beta.11"
@ -5647,14 +5642,14 @@ htmlparser2@^3.3.0:
inherits "^2.0.1"
readable-stream "^3.1.1"
htmlparser2@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
htmlparser2@^5.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.0.tgz#78454bc782599291d9fefd7b48ef2058dc62eb89"
integrity sha512-/Cvz5RTj9q71kCL9No1u2jhFaAdoMtxpNy0YTwjmQB3iX2TZXfCojTm7tp3rM4NxcwaX1iAzvNgo8OFectXmrQ==
dependencies:
domelementtype "^2.0.1"
domhandler "^3.0.0"
domutils "^2.0.0"
domhandler "^3.3.0"
domutils "^2.4.2"
entities "^2.0.0"
http-deceiver@^1.2.7:
@ -6037,10 +6032,10 @@ is-buffer@^1.0.2, is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-callable@^1.1.4, is-callable@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.1.tgz#4d1e21a4f437509d25ce55f8184350771421c96d"
integrity sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==
is-callable@^1.1.4, is-callable@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
is-ci@^2.0.0:
version "2.0.0"
@ -6229,7 +6224,7 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
is-regex@^1.0.4, is-regex@^1.1.0, is-regex@^1.1.1:
is-regex@^1.0.4, is-regex@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz#c6f98aacc546f6cec5468a07b7b153ab564a57b9"
integrity sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==
@ -7415,11 +7410,16 @@ miller-rabin@^4.0.0:
bn.js "^4.0.0"
brorand "^1.0.1"
mime-db@1.44.0, "mime-db@>= 1.43.0 < 2":
mime-db@1.44.0:
version "1.44.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
"mime-db@>= 1.43.0 < 2":
version "1.45.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea"
integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==
mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24:
version "2.1.27"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
@ -7551,9 +7551,9 @@ mixin-object@^2.0.1:
minimist "^1.2.5"
moment@^2.24.0:
version "2.28.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75"
integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw==
version "2.29.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425"
integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA==
move-concurrently@^1.0.1:
version "1.0.1"
@ -7868,18 +7868,18 @@ object-hash@^2.0.1:
resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.0.3.tgz#d12db044e03cd2ca3d77c0570d87225b02e1e6ea"
integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==
object-inspect@^1.7.0, object-inspect@^1.8.0:
object-inspect@^1.8.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0"
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
object-is@^1.0.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
version "1.1.3"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
es-abstract "^1.18.0-next.1"
object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1"
@ -7898,7 +7898,7 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
object.assign@^4.1.0:
object.assign@^4.1.0, object.assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd"
integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==
@ -7994,9 +7994,9 @@ onetime@^5.1.0:
mimic-fn "^2.1.0"
open@^7.0.2:
version "7.2.1"
resolved "https://registry.yarnpkg.com/open/-/open-7.2.1.tgz#07b0ade11a43f2a8ce718480bdf3d7563a095195"
integrity sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==
version "7.3.0"
resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
@ -8461,9 +8461,9 @@ postcss-browser-comments@^3.0.0:
postcss "^7"
postcss-calc@^7.0.1:
version "7.0.4"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz#5e177ddb417341e6d4a193c5d9fd8ada79094f8b"
integrity sha512-0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==
version "7.0.5"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e"
integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==
dependencies:
postcss "^7.0.27"
postcss-selector-parser "^6.0.2"
@ -8666,9 +8666,9 @@ postcss-lab-function@^2.0.1:
postcss-values-parser "^2.0.0"
postcss-load-config@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw==
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
@ -9042,13 +9042,14 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4:
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss-svgo@^4.0.2:
version "4.0.2"
@ -9098,9 +9099,9 @@ postcss@7.0.21:
supports-color "^6.1.0"
postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.34"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw==
version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies:
chalk "^2.4.2"
source-map "^0.6.1"
@ -9313,7 +9314,7 @@ raf@^3.1.0, raf@^3.4.0, raf@^3.4.1:
dependencies:
performance-now "^2.1.0"
ramda@^0.27:
ramda@^0.27.1:
version "0.27.1"
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
@ -9453,11 +9454,11 @@ react-dev-utils@^10.2.1:
text-table "0.2.0"
react-device-detect@^1.11.14:
version "1.13.1"
resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-1.13.1.tgz#27ac0e86a03969e440e973d179aaa19e80a5ba66"
integrity sha512-XTPgAMsUVHC5lMNUGiAeO2UfAfhMfjq0CBUM67eHnc9XfO7iESh6h/cffKV8VGgrZBX+dyuqJl23bLLHoav5Ig==
version "1.14.0"
resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-1.14.0.tgz#ae8bf8cff85055c030f97aa491a0c2b06c472644"
integrity sha512-fXFsZoTeLVrONrUr2sqCAXvnbouwyuqlBWoa3K92goCiPM1lUBvZqekv5TY3C02U/IrdoKLOBPFITYluwxKFyw==
dependencies:
ua-parser-js "^0.7.21"
ua-parser-js "^0.7.22"
react-dom@^16.12.0:
version "16.13.1"
@ -9627,12 +9628,12 @@ react-scripts@3.4.3:
fsevents "2.1.2"
react-svg@^11.0.9:
version "11.0.40"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.40.tgz#0cb93a07e20b747b7b1a118ea14ccbb25ef5c093"
integrity sha512-uNsWS2o65NmUey7MppPVWTFeyYxfe6b82g5+rJcxjJGAfm3SAiA+oSfuDD+fjpJJLMCoWkBJoyCzNuV3FTVLVg==
version "11.0.42"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.42.tgz#742edae2c5b43e2a36f5ea17e953fce4c4f25b24"
integrity sha512-DYRpk4St3oNQBwaFdyYKA7yz2/VUrT07QHuHDTZXVeEfijZlRbzDYj4rSGe3MvEdzOoLUJCcjIYPvki2sUNqfA==
dependencies:
"@babel/runtime" "^7.11.2"
"@tanem/svg-injector" "^8.0.68"
"@tanem/svg-injector" "^8.0.70"
prop-types "^15.7.2"
react-text-mask@^5.4.3:
@ -10541,6 +10542,11 @@ sisteransi@^1.0.4:
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
sjcl@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.8.tgz#f2ec8d7dc1f0f21b069b8914a41a8f236b0e252a"
integrity sha512-LzIjEQ0S0DpIgnxMEayM1rq9aGwGRG4OnZhCdjx7glTaJtf4zRfpg87ImfjSJjoW9vKpagd82McDOwbRT5kQKQ==
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
@ -11443,7 +11449,7 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
ua-parser-js@^0.7.21:
ua-parser-js@^0.7.22:
version "0.7.22"
resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.22.tgz#960df60a5f911ea8f1c818f3747b99c6e177eae3"
integrity sha512-YUxzMjJ5T71w6a8WWVcMGM6YWOTX27rCoIQgLXiWaxqXSx9D7DNjiGWn1aJIRSQ5qr0xuhra77bSIh6voR/46Q==
@ -11582,7 +11588,7 @@ use@^3.1.0:
resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=

View File

@ -61,10 +61,10 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. All signers completed $Message
///
///This is a mail message to notify you that all signers completed &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;.
///
/// Looks up a localized string similar to h1. All signers completed $Message
///
///This is a mail message to notify you that all signers completed &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;.
///
///^You receive this email because you are a registered user of the &quot;${__VirtualRootPath}&quot;:&quot;${__VirtualRootPath}&quot; portal.^.
/// </summary>
public static string pattern_DocuSignComplete {
@ -74,10 +74,10 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. $Message: $DocumentTitle
///
///Watch your DocuSign account for more information.
///
/// Looks up a localized string similar to h1. $Message: $DocumentTitle
///
///Watch your DocuSign account for more information.
///
///^You receive this email because you are a registered user of the &quot;${__VirtualRootPath}&quot;:&quot;${__VirtualRootPath}&quot; portal.^.
/// </summary>
public static string pattern_DocuSignStatus {
@ -87,12 +87,12 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;
///
///This is a mail message to notify you that you have mentioned by &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot;.
///
///$Message
///
/// Looks up a localized string similar to h1. &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;
///
///This is a mail message to notify you that you have mentioned by &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot;.
///
///$Message
///
///^You receive this email because you are a registered user of the &quot;${__VirtualRootPath}&quot;:&quot;${__VirtualRootPath}&quot; portal.^.
/// </summary>
public static string pattern_EditorMentions {
@ -102,12 +102,12 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. Mailing completed
///
///This is a mail message to notify you that you have requested the mailing of $MailsCount messages and the process is now complete. $Message
///
///The successfully sent mail messages can be found in your &quot;Sent&quot;:&quot;$__VirtualRootPath/addons/mail/#sent&quot; folder of the Mail module.
///
/// Looks up a localized string similar to h1. Mailing completed
///
///This is a mail message to notify you that you have requested the mailing of $MailsCount messages and the process is now complete. $Message
///
///The successfully sent mail messages can be found in your &quot;Sent&quot;:&quot;$__VirtualRootPath/addons/mail/#sent&quot; folder of the Mail module.
///
///^You receive this email because you are a registered user of the &quot;${__VirtualRootPath}&quot;:&quot;${__VirtualRootPath}&quot; portal.^.
/// </summary>
public static string pattern_MailMergeEnd {
@ -117,10 +117,10 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. Access granted to document: &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;
///
///$__DateTime &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot; granted you the access to the &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot; document with the following access rights: &quot;$AccessRights&quot;.
///
/// Looks up a localized string similar to h1. Access granted to document: &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot;
///
///$__DateTime &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot; granted you the access to the &quot;$DocumentTitle&quot;:&quot;$DocumentURL&quot; document with the following access rights: &quot;$AccessRights&quot;.
///
///$Message.
/// </summary>
public static string pattern_ShareDocument {
@ -130,10 +130,10 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to h1. Access granted to folder: &quot;$DocumentTitle&quot;:&quot;$__VirtualRootPath/products/files/#$FolderID&quot;
///
///$__DateTime &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot; granted you the access to the &quot;$DocumentTitle&quot;:&quot;$__VirtualRootPath/products/files/#$FolderID&quot; folder with the following access rights: &quot;$AccessRights&quot;.
///
/// Looks up a localized string similar to h1. Access granted to folder: &quot;$DocumentTitle&quot;:&quot;$__VirtualRootPath/products/files/#$FolderID&quot;
///
///$__DateTime &quot;$__AuthorName&quot;:&quot;$__AuthorUrl&quot; granted you the access to the &quot;$DocumentTitle&quot;:&quot;$__VirtualRootPath/products/files/#$FolderID&quot; folder with the following access rights: &quot;$AccessRights&quot;.
///
///$Message.
/// </summary>
public static string pattern_ShareFolder {
@ -143,14 +143,14 @@ namespace ASC.Files.Core.Services.NotifyService {
}
/// <summary>
/// Looks up a localized string similar to &lt;patterns&gt;
/// &lt;formatter type=&quot;ASC.Notify.Patterns.NVelocityPatternFormatter, ASC.Core.Common&quot; /&gt;
///
/// &lt;pattern id=&quot;DocuSignComplete&quot; sender=&quot;email.sender&quot;&gt;
/// &lt;subject resource=&quot;|subject_DocuSignComplete|ASC.Files.Core.Services.NotifyService.FilesPatternResource,ASC.Files.Core&quot; /&gt;
/// &lt;body styler=&quot;ASC.Notify.Textile.TextileStyler,ASC.Notify.Textile&quot; resource=&quot;|pattern_DocuSignComplete|ASC.Files.Core.Services.NotifyService.FilesPatternResource,ASC.Files.Core&quot; /&gt;
/// &lt;/pattern&gt;
/// &lt;pattern id=&quot;DocuSignComplete&quot; [rest of string was truncated]&quot;;.
/// Looks up a localized string similar to &lt;patterns&gt;
/// &lt;formatter type=&quot;ASC.Notify.Patterns.NVelocityPatternFormatter, ASC.Core.Common&quot; /&gt;
///
/// &lt;pattern id=&quot;DocuSignComplete&quot; sender=&quot;email.sender&quot;&gt;
/// &lt;subject resource=&quot;|subject_DocuSignComplete|ASC.Files.Core.Services.NotifyService.FilesPatternResource,ASC.Files.Core&quot; /&gt;
/// &lt;body styler=&quot;ASC.Notify.Textile.TextileStyler,ASC.Notify.Textile&quot; resource=&quot;|pattern_DocuSignComplete|ASC.Files.Core.Services.NotifyService.FilesPatternResource,ASC.Files.Core&quot; /&gt;
/// &lt;/pattern&gt;
/// &lt;pattern id=&quot;DocuSignCom [rest of string was truncated]&quot;;.
/// </summary>
public static string patterns {
get {

View File

@ -10,7 +10,7 @@ import { createI18N } from "../../../helpers/i18n";
const i18n = createI18N({
page: "Article",
localesPath: "Article"
localesPath: "Article",
});
const { changeLanguage } = utils;
@ -19,11 +19,11 @@ class PureArticleMainButtonContent extends React.Component {
constructor(props) {
super(props);
this.state = {
dialogVisible: false
dialogVisible: false,
};
}
onDropDownItemClick = link => {
onDropDownItemClick = (link) => {
this.props.history.push(link);
};
@ -42,7 +42,7 @@ class PureArticleMainButtonContent extends React.Component {
history.push(`${settings.homepage}/group/create`);
};
onNotImplementedClick = text => {
onNotImplementedClick = (text) => {
toastr.success(text);
};
@ -110,24 +110,29 @@ const ArticleMainButtonContentContainer = withTranslation()(
PureArticleMainButtonContent
);
const ArticleMainButtonContent = props => {
const ArticleMainButtonContent = ({ language, ...rest }) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
changeLanguage(i18n, language);
}, [language]);
return (
<I18nextProvider i18n={i18n}>
<ArticleMainButtonContentContainer {...props} />
<ArticleMainButtonContentContainer {...rest} />
</I18nextProvider>
);
};
ArticleMainButtonContent.propTypes = {
history: PropTypes.object.isRequired
history: PropTypes.object.isRequired,
language: PropTypes.string,
};
const mapStateToProps = state => {
const mapStateToProps = (state) => {
const { culture } = state.auth.settings;
const { cultureName } = state.auth.user;
return {
settings: state.auth.settings
settings: state.auth.settings,
language: cultureName || culture || "en-US",
};
};

View File

@ -6,14 +6,15 @@ import {
IconButton,
Link,
ComboBox,
HelpButton
HelpButton,
} from "asc-web-components";
import styled from "styled-components";
import { history, api, store as commonStore, toastr } from "asc-web-common";
import { history, api, store, toastr } from "asc-web-common";
import { connect } from "react-redux";
import store from "../../../../../../store/store";
import { updateProfileCulture } from "../../../../../../store/profile/actions";
const { resendUserInvites } = api.people;
const { getCurrentCustomSchema, getModules } = commonStore.auth.actions;
const { getCurrentCustomSchema, getModules } = store.auth.actions;
const InfoContainer = styled.div`
margin-bottom: 24px;
@ -71,7 +72,7 @@ const InfoItemValue = styled.div`
`;
const IconButtonWrapper = styled.div`
${props => (props.isBefore ? `margin-right: 8px;` : `margin-left: 8px;`)}
${(props) => (props.isBefore ? `margin-right: 8px;` : `margin-left: 8px;`)}
display: inline-flex;
@ -82,12 +83,12 @@ const IconButtonWrapper = styled.div`
}
`;
const onGroupClick = e => {
const onGroupClick = (e) => {
const id = e.currentTarget.dataset.id;
history.push(`/products/people/filter?group=${id}`);
};
const getFormattedDepartments = departments => {
const getFormattedDepartments = (departments) => {
const formattedDepartments = departments.map((department, index) => {
return (
<span key={index}>
@ -108,7 +109,7 @@ const getFormattedDepartments = departments => {
return formattedDepartments;
};
const capitalizeFirstLetter = string => {
const capitalizeFirstLetter = (string) => {
return string && string.charAt(0).toUpperCase() + string.slice(1);
};
@ -118,47 +119,49 @@ class ProfileInfo extends React.PureComponent {
this.state = this.mapPropsToState(props);
}
mapPropsToState = props => {
mapPropsToState = (props) => {
const newState = {
profile: props.profile
profile: props.profile,
};
return newState;
};
onSentInviteAgain = id => {
onSentInviteAgain = (id) => {
resendUserInvites(new Array(id))
.then(() => toastr.success("The invitation was successfully sent"))
.catch(error => toastr.error(error));
.catch((error) => toastr.error(error));
};
onEmailClick = e => {
onEmailClick = (e) => {
const email = e.currentTarget.dataset.email;
if (e.target.title) window.open("mailto:" + email);
};
onLanguageSelect = language => {
onLanguageSelect = (language) => {
console.log("onLanguageSelect", language);
const { profile, updateProfileCulture, nameSchemaId } = this.props;
const {
profile,
updateProfileCulture,
nameSchemaId,
getModules,
getCurrentCustomSchema,
} = this.props;
if (profile.cultureName === language.key) return;
updateProfileCulture(profile.id, language.key)
.then(() => {
if (!nameSchemaId) return;
return axios.all([
getModules(store.dispatch),
getCurrentCustomSchema(store.dispatch, nameSchemaId)
]);
if (!nameSchemaId) return getModules();
return axios.all([getModules(), getCurrentCustomSchema(nameSchemaId)]);
})
.catch(err => console.log(err));
.catch((err) => console.log(err));
};
getLanguages = () => {
const { cultures, t } = this.props;
return cultures.map(culture => {
return cultures.map((culture) => {
return { key: culture, label: t(`Culture_${culture}`) };
});
};
@ -177,7 +180,7 @@ class ProfileInfo extends React.PureComponent {
birthday,
location,
cultureName,
currentCulture
currentCulture,
} = this.props.profile;
const isAdmin = this.props.isAdmin;
const isSelf = this.props.isSelf;
@ -188,12 +191,12 @@ class ProfileInfo extends React.PureComponent {
regDateCaption,
groupCaption,
userCaption,
guestCaption
guestCaption,
} = this.props;
const type = isVisitor ? guestCaption : userCaption;
const language = cultureName || currentCulture || this.props.culture;
const languages = this.getLanguages();
const selectedLanguage = languages.find(item => item.key === language);
const selectedLanguage = languages.find((item) => item.key === language);
const workFromDate = new Date(workFrom).toLocaleDateString(language);
const birthDayDate = new Date(birthday).toLocaleDateString(language);
const formatedSex = capitalizeFirstLetter(sex);
@ -333,7 +336,7 @@ function mapStateToProps(state) {
regDateCaption,
userPostCaption,
userCaption,
guestCaption
guestCaption,
} = customNames;
return {
@ -342,8 +345,15 @@ function mapStateToProps(state) {
userPostCaption,
userCaption,
guestCaption,
nameSchemaId
nameSchemaId,
};
}
export default connect(mapStateToProps)(ProfileInfo);
const mapDispatchToProps = (dispatch) => {
return {
getModules: () => getModules(dispatch),
getCurrentCustomSchema: (id) => getCurrentCustomSchema(dispatch, id),
updateProfileCulture: (id, culture) =>
dispatch(updateProfileCulture(id, culture)),
};
};
export default connect(mapStateToProps, mapDispatchToProps)(ProfileInfo);

View File

@ -4,18 +4,21 @@ import {
IconButton,
Text,
ToggleContent,
Link
Link,
} from "asc-web-components";
import { getUserContacts, getUserRole } from "../../../../../store/people/selectors";
import {
getUserContacts,
getUserRole,
} from "../../../../../store/people/selectors";
import ProfileInfo from "./ProfileInfo/ProfileInfo";
import React from "react";
import { connect } from "react-redux";
import { store } from 'asc-web-common';
import styled from 'styled-components';
import { updateProfileCulture } from "../../../../../store/profile/actions";
import { store } from "asc-web-common";
import styled from "styled-components";
import { withRouter } from "react-router";
import { withTranslation } from 'react-i18next';
import { withTranslation } from "react-i18next";
const { isAdmin, isMe } = store.auth.selectors;
@ -43,8 +46,8 @@ const EditButtonWrapper = styled.div`
const ToggleWrapper = styled.div`
width: 100%;
min-width: 100%;
${props => props.isSelf && `margin-bottom: 24px;`}
${props => props.isContacts && `margin-top: 24px;`}
${(props) => props.isSelf && `margin-bottom: 24px;`}
${(props) => props.isContacts && `margin-top: 24px;`}
max-width: 1024px;
`;
@ -62,7 +65,7 @@ const ContactWrapper = styled.div`
}
`;
const createContacts = contacts => {
const createContacts = (contacts) => {
const styledContacts = contacts.map((contact, index) => {
let url = null;
if (contact.link && contact.link.length > 0) {
@ -70,12 +73,14 @@ const createContacts = contacts => {
}
return (
<ContactWrapper key={index}>
<IconButton className='icon-button' color="#333333" size={16} iconName={contact.icon} isFill={true} />
<Link
className='contact-link'
isTextOverflow
href={url}
>
<IconButton
className="icon-button"
color="#333333"
size={16}
iconName={contact.icon}
isFill={true}
/>
<Link className="contact-link" isTextOverflow href={url}>
{contact.value}
</Link>
</ContactWrapper>
@ -85,20 +90,28 @@ const createContacts = contacts => {
return styledContacts;
};
const stringFormat = (string, data) => string.replace(/\{(\d+)\}/g, (m, n) => data[n] || m);
const stringFormat = (string, data) =>
string.replace(/\{(\d+)\}/g, (m, n) => data[n] || m);
class SectionBodyContent extends React.PureComponent {
onEditSubscriptionsClick = () => console.log("Edit subscriptions onClick()");
onEditProfileClick = () => this.props.history.push(`${this.props.settings.homepage}/edit/${this.props.profile.userName}`);
onEditProfileClick = () =>
this.props.history.push(
`${this.props.settings.homepage}/edit/${this.props.profile.userName}`
);
render() {
const { profile, updateProfileCulture, settings, isAdmin, viewer, t } = this.props;
const { profile, settings, isAdmin, viewer, t } = this.props;
const contacts = profile.contacts && getUserContacts(profile.contacts);
const role = getUserRole(profile);
const socialContacts = (contacts && contacts.social && contacts.social.length > 0 && createContacts(contacts.social)) || null;
const socialContacts =
(contacts &&
contacts.social &&
contacts.social.length > 0 &&
createContacts(contacts.social)) ||
null;
const infoContacts = contacts && createContacts(contacts.contact);
const isSelf = isMe(viewer, profile.userName);
@ -123,14 +136,21 @@ class SectionBodyContent extends React.PureComponent {
</EditButtonWrapper>
)}
</AvatarWrapper>
<ProfileInfo profile={profile} updateProfileCulture={updateProfileCulture} isSelf={isSelf} isAdmin={isAdmin} t={t} cultures={settings.cultures} culture={settings.culture} />
{(isSelf && false) && (
<ToggleWrapper isSelf={true} >
<ToggleContent label={t('Subscriptions')} isOpen={true} >
<ProfileInfo
profile={profile}
isSelf={isSelf}
isAdmin={isAdmin}
t={t}
cultures={settings.cultures}
culture={settings.culture}
/>
{isSelf && false && (
<ToggleWrapper isSelf={true}>
<ToggleContent label={t("Subscriptions")} isOpen={true}>
<Text as="span">
<Button
size="big"
label={t('EditSubscriptionsBtn')}
label={t("EditSubscriptionsBtn")}
primary={true}
onClick={this.onEditSubscriptionsClick}
/>
@ -140,21 +160,21 @@ class SectionBodyContent extends React.PureComponent {
)}
{profile.notes && (
<ToggleWrapper>
<ToggleContent label={t('Comments')} isOpen={true} >
<ToggleContent label={t("Comments")} isOpen={true}>
<Text as="span">{profile.notes}</Text>
</ToggleContent>
</ToggleWrapper>
)}
{profile.contacts && (
<ToggleWrapper isContacts={true} >
<ToggleContent label={t('ContactInformation')} isOpen={true} >
<ToggleWrapper isContacts={true}>
<ToggleContent label={t("ContactInformation")} isOpen={true}>
<Text as="span">{infoContacts}</Text>
</ToggleContent>
</ToggleWrapper>
)}
{socialContacts && (
<ToggleWrapper isContacts={true} >
<ToggleContent label={t('SocialProfiles')} isOpen={true} >
<ToggleWrapper isContacts={true}>
<ToggleContent label={t("SocialProfiles")} isOpen={true}>
<Text as="span">{socialContacts}</Text>
</ToggleContent>
</ToggleWrapper>
@ -164,13 +184,15 @@ class SectionBodyContent extends React.PureComponent {
}
}
const mapStateToProps = state => {
const mapStateToProps = (state) => {
return {
settings: state.auth.settings,
profile: state.profile.targetUser,
isAdmin: isAdmin(state.auth.user),
viewer: state.auth.user
viewer: state.auth.user,
};
}
};
export default connect(mapStateToProps, { updateProfileCulture })(withRouter(withTranslation()(SectionBodyContent)));
export default connect(mapStateToProps)(
withRouter(withTranslation()(SectionBodyContent))
);

View File

@ -6,7 +6,7 @@ import { PageLayout, utils, store, toastr } from "asc-web-common";
import {
ArticleHeaderContent,
ArticleMainButtonContent,
ArticleBodyContent
ArticleBodyContent,
} from "../../Article";
import { SectionHeaderContent, SectionBodyContent } from "./Section";
import { fetchProfile, resetProfile } from "../../../store/profile/actions";
@ -16,7 +16,7 @@ import { setDocumentTitle } from "../../../helpers/utils";
const i18n = createI18N({
page: "Profile",
localesPath: "pages/Profile"
localesPath: "pages/Profile",
});
const { changeLanguage } = utils;
const { isAdmin } = store.auth.selectors;
@ -26,7 +26,7 @@ class PureProfile extends React.Component {
super(props);
this.state = {
queryString: `${props.location.search.slice(1)}`
queryString: `${props.location.search.slice(1)}`,
};
}
@ -37,7 +37,7 @@ class PureProfile extends React.Component {
setDocumentTitle(t("Profile"));
const queryParams = this.state.queryString.split("&");
const arrayOfQueryParams = queryParams.map(queryParam =>
const arrayOfQueryParams = queryParams.map((queryParam) =>
queryParam.split("=")
);
const linkParams = Object.fromEntries(arrayOfQueryParams);
@ -74,7 +74,7 @@ class PureProfile extends React.Component {
<ArticleHeaderContent />
</PageLayout.ArticleHeader>
)}
{(!isVisitor && isAdmin) && (
{!isVisitor && isAdmin && (
<PageLayout.ArticleMainButton>
<ArticleMainButtonContent />
</PageLayout.ArticleMainButton>
@ -95,8 +95,8 @@ class PureProfile extends React.Component {
{profile ? (
<SectionBodyContent />
) : (
<Loader className="pageLoader" type="rombs" size="40px" />
)}
<Loader className="pageLoader" type="rombs" size="40px" />
)}
</PageLayout.SectionBody>
</PageLayout>
);
@ -105,14 +105,14 @@ class PureProfile extends React.Component {
const ProfileContainer = withTranslation()(PureProfile);
const Profile = props => {
const Profile = ({ language, ...rest }) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
changeLanguage(i18n, language);
}, [language]);
return (
<I18nextProvider i18n={i18n}>
<ProfileContainer {...props} />
<ProfileContainer {...rest} />
</I18nextProvider>
);
};
@ -123,21 +123,22 @@ Profile.propTypes = {
isLoaded: PropTypes.bool,
match: PropTypes.object.isRequired,
profile: PropTypes.object,
isAdmin: PropTypes.bool
isAdmin: PropTypes.bool,
language: PropTypes.string,
};
function mapStateToProps(state) {
const { cultureName } = state.auth.user;
const { culture } = state.auth.settings;
return {
isVisitor: state.auth.user.isVisitor,
profile: state.profile.targetUser,
isAdmin: isAdmin(state.auth.user)
isAdmin: isAdmin(state.auth.user),
language: cultureName || culture || "en-US",
};
}
export default connect(
mapStateToProps,
{
fetchProfile,
resetProfile
}
)(Profile);
export default connect(mapStateToProps, {
fetchProfile,
resetProfile,
})(Profile);

View File

@ -1528,17 +1528,17 @@
"@svgr/plugin-svgo" "^4.3.1"
loader-utils "^1.2.3"
"@tanem/svg-injector@^8.0.68":
version "8.0.69"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.69.tgz#ef41afc98c3c706ef16f7468991f558a82e567c9"
integrity sha512-/F4v9aXqvoa0bg+m0m/eRHnYkPxkkAfakLcB/hRIHQ9Fqwuxz1JBDxQ0xcgNkEJI4dN9uCCvAIUIoUoQieAp6g==
"@tanem/svg-injector@^8.0.70":
version "8.0.71"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.71.tgz#810e1b0de741c774d68722499a4a48fb61dfa9e9"
integrity sha512-JOlNQDnhWjWyR9g2P3cYA+CPiBstxS0rLoSFOFtHxavpwwPiQf2JtyqAqMVxgR8XV1USadLrTFUtk4fEq3Pxow==
dependencies:
"@babel/runtime" "^7.11.2"
"@types/babel__core@^7.1.0":
version "7.1.9"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d"
integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==
version "7.1.10"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.10.tgz#ca58fc195dd9734e77e57c6f2df565623636ab40"
integrity sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@ -1547,32 +1547,27 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
version "7.6.1"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
version "7.6.2"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.0.2"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
version "7.0.3"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.3.tgz#b8aaeba0a45caca7b56a5de9459872dde3727214"
integrity sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.14.tgz#e99da8c075d4fb098c774ba65dabf7dc9954bd13"
integrity sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==
version "7.0.15"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
dependencies:
"@babel/types" "^7.3.0"
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/eslint-visitor-keys@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
@ -1627,9 +1622,9 @@
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*":
version "14.11.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
version "14.11.2"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.2.tgz#2de1ed6670439387da1c9f549a2ade2b0a799256"
integrity sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==
"@types/parse-json@^4.0.0":
version "4.0.0"
@ -1659,9 +1654,9 @@
integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
version "13.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.10.tgz#e77bf3fc73c781d48c2eb541f87c453e321e5f4b"
integrity sha512-MU10TSgzNABgdzKvQVW1nuuT+sgBMWeXNc3XOs5YXV5SDAK+PPja2eUuBNB9iqElu03xyEDqlnGw0jgl4nbqGQ==
version "13.0.11"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.11.tgz#def2f0c93e4bdf2c61d7e34899b17e34be28d3b1"
integrity sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==
dependencies:
"@types/yargs-parser" "*"
@ -1911,14 +1906,14 @@ acorn@^5.5.3:
integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
acorn@^6.0.1, acorn@^6.0.4, acorn@^6.2.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
version "6.4.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
acorn@^7.1.0, acorn@^7.1.1:
version "7.4.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c"
integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==
version "7.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
add-dom-event-listener@^1.1.0:
version "1.1.0"
@ -2041,11 +2036,10 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
color-convert "^1.9.0"
ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
"@types/color-name" "^1.1.1"
color-convert "^2.0.1"
anymatch@^2.0.0:
@ -2177,7 +2171,7 @@ asap@~2.0.6:
integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
"asc-web-common@file:../../../packages/asc-web-common":
version "1.0.231"
version "1.0.246"
dependencies:
axios "^0.19.1"
history "4.10.1"
@ -2187,9 +2181,10 @@ asap@~2.0.6:
react-viewer "^3.2.1"
react-window-infinite-loader "^1.0.5"
screenfull "^5.0.2"
sjcl "^1.0.8"
"asc-web-components@file:../../../packages/asc-web-components":
version "1.0.449"
version "1.0.457"
dependencies:
email-addresses "^3.1.0"
html-to-react "^1.4.2"
@ -2744,12 +2739,12 @@ browserslist@4.10.0:
pkg-up "^3.1.0"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.8.5, browserslist@^4.9.1:
version "4.14.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.3.tgz#381f9e7f13794b2eb17e1761b4f118e8ae665a53"
integrity sha512-GcZPC5+YqyPO4SFnz48/B0YaCwS47Q9iPChRGi6t7HhflKBcINzFrJvRfC+jp30sRMKxF+d4EHGs27Z0XP1NaQ==
version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies:
caniuse-lite "^1.0.30001131"
electron-to-chromium "^1.3.570"
caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.571"
escalade "^3.1.0"
node-releases "^1.1.61"
@ -2939,10 +2934,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001131:
version "1.0.30001132"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001132.tgz#309279274f10d3aa736aa91fa269fcc8d0cd7ef9"
integrity sha512-zk5FXbnsmHa0Ktc/NOZJRr+ilXva+2KFJuRiQfnjkxJfV/7DYP5C27lSQF++/veCUzVWE5xecZnSBJjf6fSwJA==
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001143"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001143.tgz#560f2cfb9f313d1d7e52eb8dac0e4e36c8821c0d"
integrity sha512-p/PO5YbwmCpBJPxjOiKBvAlUPgF8dExhfEpnsH+ys4N/791WHrYrGg0cyHiAURl5hSbx5vIcjKmQAP6sHDYH3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -3682,9 +3677,9 @@ css-what@2.1:
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
css-what@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39"
integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==
version "3.4.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.1.tgz#81cb70b609e4b1351b1e54cbc90fd9c54af86e2e"
integrity sha512-wHOppVDKl4vTAOWzJt5Ek37Sgd9qq1Bmj/T1OjvicWbU5W7ru7Pqbn0Jdqii3Drx/h+dixHKXNhZYx7blthL7g==
css@^2.0.0:
version "2.2.4"
@ -4141,10 +4136,10 @@ domhandler@^2.3.0:
dependencies:
domelementtype "1"
domhandler@^3.0, domhandler@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
domhandler@^3.0.0, domhandler@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
dependencies:
domelementtype "^2.0.1"
@ -4164,14 +4159,14 @@ domutils@^1.5.1, domutils@^1.7.0:
dom-serializer "0"
domelementtype "1"
domutils@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.3.0.tgz#6469c63a3da2de0c3016f3a59e6a969e10705bce"
integrity sha512-xWC75PM3QF6MjE5e58OzwTX0B/rPQnlqH0YyXB/c056RtVJA+eu60da2I/bdnEHzEYC00g8QaZUlAbqOZVbOsw==
domutils@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b"
integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.0.1"
domhandler "^3.0.0"
domhandler "^3.3.0"
dot-case@^3.0.3:
version "3.0.3"
@ -4231,10 +4226,10 @@ ejs@^2.6.1:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.570:
version "1.3.570"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.570.tgz#3f5141cc39b4e3892a276b4889980dabf1d29c7f"
integrity sha512-Y6OCoVQgFQBP5py6A/06+yWxUZHDlNr/gNDGatjH8AZqXl8X0tE4LfjLJsXGz/JmWJz8a6K7bR1k+QzZ+k//fg==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.571:
version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
elliptic@^6.5.3:
version "6.5.3"
@ -4320,37 +4315,37 @@ error-ex@^1.2.0, error-ex@^1.3.1:
is-arrayish "^0.2.1"
es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5:
version "1.17.6"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
version "1.17.7"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-regex "^1.1.0"
object-inspect "^1.7.0"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.0:
version "1.18.0-next.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.0.tgz#b302834927e624d8e5837ed48224291f2c66e6fc"
integrity sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==
es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1:
version "1.18.0-next.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-callable "^1.2.2"
is-negative-zero "^2.0.0"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
@ -5607,14 +5602,14 @@ html-parse-stringify2@2.0.1:
void-elements "^2.0.1"
html-to-react@^1.4.2:
version "1.4.3"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.3.tgz#1430a1cb581ef29533892ec70a2fdc4554b17ffd"
integrity sha512-txe09A3vxW8yEZGJXJ1is5gGDfBEVACmZDSgwDyH5EsfRdOubBwBCg63ZThZP0xBn0UE4FyvMXZXmohusCxDcg==
version "1.4.4"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.4.tgz#dd5edb76ff28ab7fc34faabd91446bece292dc38"
integrity sha512-oE4GYH8c/gvFQwfNHBhg1LpfiPsQRKj0JQmvccvUHqyyF7U1H7UzZ7Z6CyF7okv1QFukyvjH9aAApNa4kYSO9g==
dependencies:
domhandler "^3.0"
htmlparser2 "^4.1.0"
domhandler "^3.3.0"
htmlparser2 "^5.0"
lodash.camelcase "^4.3.0"
ramda "^0.27"
ramda "^0.27.1"
html-webpack-plugin@4.0.0-beta.11:
version "4.0.0-beta.11"
@ -5640,14 +5635,14 @@ htmlparser2@^3.3.0:
inherits "^2.0.1"
readable-stream "^3.1.1"
htmlparser2@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
htmlparser2@^5.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.0.tgz#78454bc782599291d9fefd7b48ef2058dc62eb89"
integrity sha512-/Cvz5RTj9q71kCL9No1u2jhFaAdoMtxpNy0YTwjmQB3iX2TZXfCojTm7tp3rM4NxcwaX1iAzvNgo8OFectXmrQ==
dependencies:
domelementtype "^2.0.1"
domhandler "^3.0.0"
domutils "^2.0.0"
domhandler "^3.3.0"
domutils "^2.4.2"
entities "^2.0.0"
http-deceiver@^1.2.7:
@ -6030,10 +6025,10 @@ is-buffer@^1.0.2, is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-callable@^1.1.4, is-callable@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.1.tgz#4d1e21a4f437509d25ce55f8184350771421c96d"
integrity sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==
is-callable@^1.1.4, is-callable@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
is-ci@^2.0.0:
version "2.0.0"
@ -6222,7 +6217,7 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
is-regex@^1.0.4, is-regex@^1.1.0, is-regex@^1.1.1:
is-regex@^1.0.4, is-regex@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz#c6f98aacc546f6cec5468a07b7b153ab564a57b9"
integrity sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==
@ -7408,11 +7403,16 @@ miller-rabin@^4.0.0:
bn.js "^4.0.0"
brorand "^1.0.1"
mime-db@1.44.0, "mime-db@>= 1.43.0 < 2":
mime-db@1.44.0:
version "1.44.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
"mime-db@>= 1.43.0 < 2":
version "1.45.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea"
integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==
mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24:
version "2.1.27"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
@ -7544,9 +7544,9 @@ mixin-object@^2.0.1:
minimist "^1.2.5"
moment@^2.24.0:
version "2.28.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75"
integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw==
version "2.29.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425"
integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA==
move-concurrently@^1.0.1:
version "1.0.1"
@ -7861,18 +7861,18 @@ object-hash@^2.0.1:
resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.0.3.tgz#d12db044e03cd2ca3d77c0570d87225b02e1e6ea"
integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==
object-inspect@^1.7.0, object-inspect@^1.8.0:
object-inspect@^1.8.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0"
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
object-is@^1.0.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
version "1.1.3"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
es-abstract "^1.18.0-next.1"
object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1"
@ -7891,7 +7891,7 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
object.assign@^4.1.0:
object.assign@^4.1.0, object.assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd"
integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==
@ -7987,9 +7987,9 @@ onetime@^5.1.0:
mimic-fn "^2.1.0"
open@^7.0.2:
version "7.2.1"
resolved "https://registry.yarnpkg.com/open/-/open-7.2.1.tgz#07b0ade11a43f2a8ce718480bdf3d7563a095195"
integrity sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==
version "7.3.0"
resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
@ -8454,9 +8454,9 @@ postcss-browser-comments@^3.0.0:
postcss "^7"
postcss-calc@^7.0.1:
version "7.0.4"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz#5e177ddb417341e6d4a193c5d9fd8ada79094f8b"
integrity sha512-0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==
version "7.0.5"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e"
integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==
dependencies:
postcss "^7.0.27"
postcss-selector-parser "^6.0.2"
@ -8659,9 +8659,9 @@ postcss-lab-function@^2.0.1:
postcss-values-parser "^2.0.0"
postcss-load-config@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw==
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
@ -9035,13 +9035,14 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4:
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss-svgo@^4.0.2:
version "4.0.2"
@ -9091,9 +9092,9 @@ postcss@7.0.21:
supports-color "^6.1.0"
postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.34"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw==
version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies:
chalk "^2.4.2"
source-map "^0.6.1"
@ -9306,7 +9307,7 @@ raf@^3.1.0, raf@^3.4.0, raf@^3.4.1:
dependencies:
performance-now "^2.1.0"
ramda@^0.27:
ramda@^0.27.1:
version "0.27.1"
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
@ -9446,11 +9447,11 @@ react-dev-utils@^10.2.1:
text-table "0.2.0"
react-device-detect@^1.11.14:
version "1.13.1"
resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-1.13.1.tgz#27ac0e86a03969e440e973d179aaa19e80a5ba66"
integrity sha512-XTPgAMsUVHC5lMNUGiAeO2UfAfhMfjq0CBUM67eHnc9XfO7iESh6h/cffKV8VGgrZBX+dyuqJl23bLLHoav5Ig==
version "1.14.0"
resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-1.14.0.tgz#ae8bf8cff85055c030f97aa491a0c2b06c472644"
integrity sha512-fXFsZoTeLVrONrUr2sqCAXvnbouwyuqlBWoa3K92goCiPM1lUBvZqekv5TY3C02U/IrdoKLOBPFITYluwxKFyw==
dependencies:
ua-parser-js "^0.7.21"
ua-parser-js "^0.7.22"
react-dom@^16.12.0:
version "16.13.1"
@ -9620,12 +9621,12 @@ react-scripts@3.4.3:
fsevents "2.1.2"
react-svg@^11.0.9:
version "11.0.40"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.40.tgz#0cb93a07e20b747b7b1a118ea14ccbb25ef5c093"
integrity sha512-uNsWS2o65NmUey7MppPVWTFeyYxfe6b82g5+rJcxjJGAfm3SAiA+oSfuDD+fjpJJLMCoWkBJoyCzNuV3FTVLVg==
version "11.0.42"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.42.tgz#742edae2c5b43e2a36f5ea17e953fce4c4f25b24"
integrity sha512-DYRpk4St3oNQBwaFdyYKA7yz2/VUrT07QHuHDTZXVeEfijZlRbzDYj4rSGe3MvEdzOoLUJCcjIYPvki2sUNqfA==
dependencies:
"@babel/runtime" "^7.11.2"
"@tanem/svg-injector" "^8.0.68"
"@tanem/svg-injector" "^8.0.70"
prop-types "^15.7.2"
react-text-mask@^5.4.3:
@ -10529,6 +10530,11 @@ sisteransi@^1.0.4:
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
sjcl@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.8.tgz#f2ec8d7dc1f0f21b069b8914a41a8f236b0e252a"
integrity sha512-LzIjEQ0S0DpIgnxMEayM1rq9aGwGRG4OnZhCdjx7glTaJtf4zRfpg87ImfjSJjoW9vKpagd82McDOwbRT5kQKQ==
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
@ -11431,7 +11437,7 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
ua-parser-js@^0.7.21:
ua-parser-js@^0.7.22:
version "0.7.22"
resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.22.tgz#960df60a5f911ea8f1c818f3747b99c6e177eae3"
integrity sha512-YUxzMjJ5T71w6a8WWVcMGM6YWOTX27rCoIQgLXiWaxqXSx9D7DNjiGWn1aJIRSQ5qr0xuhra77bSIh6voR/46Q==
@ -11570,7 +11576,7 @@ use@^3.1.0:
resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=

View File

@ -464,19 +464,22 @@ namespace ASC.Employee.Core.Controllers
var user = new UserInfo();
memberModel.Password = (memberModel.Password ?? "").Trim();
if (string.IsNullOrEmpty(memberModel.Password))
memberModel.PasswordHash = (memberModel.PasswordHash ?? "").Trim();
if (string.IsNullOrEmpty(memberModel.PasswordHash))
{
memberModel.Password = UserManagerWrapper.GeneratePassword();
}
else
{
UserManagerWrapper.CheckPasswordPolicy(memberModel.Password);
}
memberModel.Password = (memberModel.Password ?? "").Trim();
var passwordHash = PasswordHasher.GetClientPassword(memberModel.Password);
if (string.IsNullOrEmpty(memberModel.Password))
{
memberModel.Password = UserManagerWrapper.GeneratePassword();
}
else
{
UserManagerWrapper.CheckPasswordPolicy(memberModel.Password);
}
memberModel.PasswordHash = PasswordHasher.GetClientPassword(memberModel.Password);
}
//Validate email
var address = new MailAddress(memberModel.Email);
@ -496,7 +499,7 @@ namespace ASC.Employee.Core.Controllers
UpdateContacts(memberModel.Contacts, user);
user = UserManagerWrapper.AddUser(user, passwordHash, false, false, memberModel.IsVisitor);
user = UserManagerWrapper.AddUser(user, memberModel.PasswordHash, false, false, memberModel.IsVisitor);
user.ActivationStatus = EmployeeActivationStatus.Activated;
@ -982,11 +985,20 @@ namespace ASC.Employee.Core.Controllers
}
}
if (!string.IsNullOrEmpty(memberModel.Password))
memberModel.PasswordHash = (memberModel.PasswordHash ?? "").Trim();
if (string.IsNullOrEmpty(memberModel.PasswordHash))
{
var passwordHash = PasswordHasher.GetClientPassword(memberModel.Password);
SecurityContext.SetUserPasswordHash(userid, passwordHash);
memberModel.Password = (memberModel.Password ?? "").Trim();
if (!string.IsNullOrEmpty(memberModel.Password))
{
memberModel.PasswordHash = PasswordHasher.GetClientPassword(memberModel.Password);
}
}
if (!string.IsNullOrEmpty(memberModel.PasswordHash))
{
SecurityContext.SetUserPasswordHash(userid, memberModel.PasswordHash);
MessageService.Send(MessageAction.UserUpdatedPassword);
CookiesManager.ResetUserCookie(userid);

View File

@ -57,7 +57,7 @@ namespace ASC.Web.Api.Controllers
public AuthenticationTokenData AuthenticateMe([FromBody] AuthModel auth)
{
var tenant = TenantManager.GetCurrentTenant();
var user = GetUser(tenant.TenantId, auth.UserName, auth.Password);
var user = GetUser(tenant.TenantId, auth);
try
{
@ -91,13 +91,24 @@ namespace ASC.Web.Api.Controllers
return model.Validate();
}
private UserInfo GetUser(int tenantId, string userName, string password)
private UserInfo GetUser(int tenantId, AuthModel memberModel)
{
var passwordHash = PasswordHasher.GetClientPassword(password);
memberModel.PasswordHash = (memberModel.PasswordHash ?? "").Trim();
if (string.IsNullOrEmpty(memberModel.PasswordHash))
{
memberModel.Password = (memberModel.Password ?? "").Trim();
if (!string.IsNullOrEmpty(memberModel.Password))
{
memberModel.PasswordHash = PasswordHasher.GetClientPassword(memberModel.Password);
}
}
var user = UserManager.GetUsersByPasswordHash(
tenantId,
userName,
passwordHash);
memberModel.UserName,
memberModel.PasswordHash);
if (user == null || !UserManager.UserExists(user))
{

View File

@ -82,6 +82,7 @@ using ASC.Web.Studio.Core.Statistic;
using ASC.Web.Studio.Core.TFA;
using ASC.Web.Studio.UserControls.CustomNavigation;
using ASC.Web.Studio.UserControls.FirstTime;
using ASC.Web.Studio.UserControls.Management;
using ASC.Web.Studio.UserControls.Statistics;
using ASC.Web.Studio.Utility;
@ -162,6 +163,7 @@ namespace ASC.Api.Settings
private BackupServiceNotifier BackupServiceNotifier { get; }
private ICacheNotify<DeleteSchedule> CacheDeleteSchedule { get; }
private EncryptionServiceNotifier EncryptionServiceNotifier { get; }
private PasswordHasher PasswordHasher { get; }
private ILog Log { get; set; }
private TelegramHelper TelegramHelper { get; }
@ -224,7 +226,8 @@ namespace ASC.Api.Settings
EncryptionSettingsHelper encryptionSettingsHelper,
BackupServiceNotifier backupServiceNotifier,
ICacheNotify<DeleteSchedule> cacheDeleteSchedule,
EncryptionServiceNotifier encryptionServiceNotifier)
EncryptionServiceNotifier encryptionServiceNotifier,
PasswordHasher passwordHasher)
{
Log = option.Get("ASC.Api");
WebHostEnvironment = webHostEnvironment;
@ -282,6 +285,7 @@ namespace ASC.Api.Settings
BackupServiceNotifier = backupServiceNotifier;
CacheDeleteSchedule = cacheDeleteSchedule;
EncryptionServiceNotifier = encryptionServiceNotifier;
PasswordHasher = passwordHasher;
StorageFactory = storageFactory;
UrlShortener = urlShortener;
TelegramHelper = telegramHelper;
@ -325,6 +329,8 @@ namespace ASC.Api.Settings
settings.EnableAdmMess = studioAdminMessageSettings.Enable || TenantExtra.IsNotPaid();
settings.ThirdpartyEnable = SetupInfo.ThirdPartyAuthEnabled && ProviderManager.IsNotEmpty;
settings.PasswordHash = PasswordHasher;
}
return settings;
@ -1474,6 +1480,38 @@ namespace ASC.Api.Settings
return true;
}
[Create("license/accept", Check = false)]
public object AcceptLicense()
{
if (!CoreBaseSettings.Standalone) return "";
TariffSettings.SetLicenseAccept(SettingsManager);
MessageService.Send(MessageAction.LicenseKeyUploaded);
try
{
LicenseReader.RefreshLicense();
}
catch (BillingNotFoundException)
{
return UserControlsCommonResource.LicenseKeyNotFound;
}
catch (BillingNotConfiguredException)
{
return UserControlsCommonResource.LicenseKeyNotCorrect;
}
catch (BillingException)
{
return UserControlsCommonResource.LicenseException;
}
catch (Exception ex)
{
return ex.Message;
}
return "";
}
[AllowAnonymous]
[Read("license/required", Check = false)]
public bool RequestLicense()
@ -1483,15 +1521,16 @@ namespace ASC.Api.Settings
[Create("license", Check = false)]
[Authorize(AuthenticationSchemes = "confirm", Roles = "Wizard")]
[Authorize(AuthenticationSchemes = "confirm", Roles = "Wizard, Administrators")]
public object UploadLicense([FromForm] UploadLicenseModel model)
{
try
{
ApiContext.AuthByClaim();
if (!AuthContext.IsAuthenticated && SettingsManager.Load<WizardSettings>().Completed) throw new SecurityException(Resource.PortalSecurity);
if (!model.Files.Any()) throw new Exception(Resource.ErrorEmptyUploadFileSelected);
ApiContext.AuthByClaim();
var licenseFile = model.Files.First();
var dueDate = LicenseReader.SaveLicenseTemp(licenseFile.OpenReadStream());
@ -2283,7 +2322,7 @@ namespace ASC.Api.Settings
return changed;
}
[Read("payment")]
[Read("payment", Check = false)]
public object PaymentSettings()
{
var settings = SettingsManager.LoadForDefaultTenant<AdditionalWhiteLabelSettings>();
@ -2421,7 +2460,8 @@ namespace ASC.Api.Settings
.AddBackupService()
.AddEncryptionServiceNotifierService()
.AddTelegramLoginProviderService()
.AddTelegramHelperSerivce();
.AddTelegramHelperSerivce()
.AddPasswordHasherService();
}
}
}

View File

@ -4,5 +4,6 @@
{
public string UserName { get; set; }
public string Password { get; set; }
public string PasswordHash { get; set; }
}
}

View File

@ -28,6 +28,7 @@ using System;
using System.Collections.Generic;
using ASC.Core.Tenants;
using ASC.Security.Cryptography;
namespace ASC.Api.Settings
{
@ -59,6 +60,8 @@ namespace ASC.Api.Settings
public string WizardToken { get; set; }
public PasswordHasher PasswordHash { get; set; }
public static SettingsWrapper GetSample()
{
return new SettingsWrapper

View File

@ -0,0 +1,3 @@
<svg width="222" height="247" viewBox="0 0 222 247" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M131.182 28.3443C138.971 28.3443 145.309 21.986 145.309 14.1721C145.309 6.35823 138.971 0 131.182 0C123.393 0 117.055 6.35823 117.055 14.1721C117.055 21.986 123.393 28.3443 131.182 28.3443ZM131.182 8.09836C134.521 8.09836 137.236 10.8224 137.236 14.1721C137.236 17.5218 134.521 20.2459 131.182 20.2459C127.843 20.2459 125.127 17.5218 125.127 14.1721C125.127 10.8224 127.843 8.09836 131.182 8.09836ZM197.782 24.2951V16.1967C197.782 13.9585 199.589 12.1475 201.818 12.1475C204.047 12.1475 205.855 13.9585 205.855 16.1967V24.2951C205.855 26.5333 204.047 28.3443 201.818 28.3443C199.589 28.3443 197.782 26.5333 197.782 24.2951ZM205.855 40.4918V48.5902C205.855 50.8284 204.047 52.6394 201.818 52.6394C199.589 52.6394 197.782 50.8284 197.782 48.5902V40.4918C197.782 38.2536 199.589 36.4426 201.818 36.4426C204.047 36.4426 205.855 38.2536 205.855 40.4918ZM181.636 32.3934C181.636 30.1553 183.444 28.3443 185.673 28.3443H193.745C195.975 28.3443 197.782 30.1553 197.782 32.3934C197.782 34.6316 195.975 36.4426 193.745 36.4426H185.673C183.444 36.4426 181.636 34.6316 181.636 32.3934ZM222 32.3934C222 34.6316 220.193 36.4426 217.964 36.4426H209.891C207.662 36.4426 205.855 34.6316 205.855 32.3934C205.855 30.1553 207.662 28.3443 209.891 28.3443H217.964C220.193 28.3443 222 30.1553 222 32.3934ZM176.271 80.93C176.271 78.5399 178.203 76.6014 180.586 76.6014C182.968 76.6014 184.901 78.5399 184.901 80.93C184.901 83.321 182.968 85.2585 180.586 85.2585C178.203 85.2585 176.271 83.322 176.271 80.93ZM211.481 146.098L154.972 121.803C153.955 121.368 152.808 121.368 151.791 121.803L121.091 135.003V52.6394C121.091 51.0177 120.129 49.5549 118.645 48.9181L62.1358 24.6231C61.1186 24.1878 59.9713 24.1878 58.9551 24.6231L2.44604 48.9181C0.961663 49.5549 0 51.0177 0 52.6394V190.311C0 191.933 0.961663 193.396 2.44604 194.033L58.9551 218.328C59.4637 218.545 60.0036 218.656 60.5455 218.656C61.0873 218.656 61.6272 218.545 62.1358 218.328L92.8364 205.128V218.656C92.8364 220.277 93.798 221.74 95.2824 222.377L151.791 246.672C152.3 246.89 152.84 247 153.382 247C153.924 247 154.464 246.89 154.972 246.672L211.481 222.377C212.966 221.74 213.927 220.277 213.927 218.656V149.82C213.927 148.198 212.966 146.735 211.481 146.098ZM153.382 129.93L199.646 149.82L153.382 169.709L107.118 149.82L153.382 129.93ZM8.07273 58.7789L56.5091 79.6028V139.63L8.07273 118.806V58.7789ZM64.5818 79.6039L113.018 58.7799V118.807L64.5818 139.631V79.6039ZM60.5455 32.7498L106.809 52.6394L60.5455 72.5289L14.2817 52.6394L60.5455 32.7498ZM8.07273 127.615L56.5091 148.439V208.465L8.07273 187.641V127.615ZM100.909 155.959L149.345 176.783V236.809L100.909 215.985V155.959Z" fill="#E6EBF0"/>
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1,10 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<path d="M17.5998 9.47059V3.04412L11.1998 0L4.79994 3.04412V10.1471L0 12.3456V19.7868L6.39991 22.8309L11.9998 20.2941L17.5998 23L23.9997 19.9559V12.3456L17.5998 9.47059ZM11.1998 1.86029L15.6798 3.88971L11.3598 5.75L7.1999 3.72059L11.1998 1.86029ZM11.1998 6.76471V11.6691L6.39991 9.47059V4.39706L11.1998 6.76471ZM6.39991 21.1397L1.59998 18.9412V13.8676L6.39991 16.2353V21.1397ZM6.39991 15.2206L2.23997 13.1912L6.39991 11.3309L10.8799 13.3603L6.39991 15.2206ZM17.5998 21.1397L12.7998 18.9412V13.8676L17.5998 16.2353V21.1397ZM17.5998 15.2206L13.4398 13.1912L17.5998 11.3309L22.0797 13.3603L17.5998 15.2206Z" fill="#333333"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="23.9997" height="24" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 856 B

View File

@ -0,0 +1,10 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.25626 2.07122C7.22961 0.724734 9.55902 0 12.0001 0C14.4413 0 16.7706 0.724734 18.7439 2.07122L14.5895 6.22575C13.7857 5.8649 12.9075 5.67483 12 5.67483C11.0926 5.67483 10.2144 5.8649 9.41067 6.22575L5.25626 2.07122Z" fill="#333333"/>
<path d="M3.5147 3.51482C3.70018 3.32933 3.89119 3.1513 4.08637 2.97955L8.11432 7.00775C7.90981 7.16755 7.71373 7.34089 7.52722 7.52746C7.34075 7.71388 7.16737 7.90996 7.00743 8.11461L2.97944 4.0865C3.15119 3.89127 3.32917 3.7003 3.5147 3.51482Z" fill="#333333"/>
<path d="M7.00757 15.8855C7.16737 16.09 7.34075 16.2861 7.52727 16.4726C7.71373 16.6591 7.90981 16.8325 8.11436 16.9925L4.08637 21.0206C3.89114 20.8489 3.70018 20.6708 3.5147 20.4854C3.32917 20.2999 3.15114 20.1089 2.97944 19.9137L7.00757 15.8855Z" fill="#333333"/>
<path d="M16.9918 15.8856C16.8319 16.0901 16.6585 16.2861 16.4721 16.4726C16.2856 16.6591 16.0895 16.8326 15.885 16.9923L19.9131 21.0206C20.1082 20.8488 20.2993 20.6708 20.4847 20.4853C20.6702 20.2998 20.8482 20.1088 21.0199 19.9136L16.9918 15.8856Z" fill="#333333"/>
<path d="M17.7741 9.41057L21.9285 5.25604C23.275 7.22938 23.9997 9.55884 23.9997 12C23.9997 14.4411 23.275 16.7706 21.9286 18.744L17.7741 14.5895C18.1349 13.7857 18.325 12.9075 18.325 12C18.325 11.0925 18.1349 10.2143 17.7741 9.41057Z" fill="#333333"/>
<path d="M20.4847 3.51479C20.2992 3.3293 20.1082 3.15136 19.913 2.97961L15.885 7.00767C16.0896 7.16756 16.2857 7.34091 16.4721 7.52742C16.6586 7.71389 16.832 7.91002 16.9918 8.11449L21.0198 4.08638C20.8481 3.89124 20.6702 3.70027 20.4847 3.51479Z" fill="#333333"/>
<path d="M12 18.3252C12.9074 18.3252 13.7856 18.1352 14.5894 17.7743L18.7439 21.9289C16.7705 23.2753 14.4412 24 12.0001 24C9.55898 24 7.22956 23.2754 5.25626 21.9289L9.41062 17.7743C10.2144 18.1352 11.0926 18.3252 12 18.3252Z" fill="#333333"/>
<path d="M6.22559 9.41069L2.07114 5.25616C0.724722 7.22951 0 9.55886 0 12C0 14.4412 0.724722 16.7706 2.07118 18.744L6.22559 14.5894C5.86476 13.7857 5.67473 12.9076 5.67473 12.0001C5.67473 11.0927 5.86476 10.2145 6.22559 9.41069Z" fill="#333333"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,3 @@
<svg width="24" height="23" viewBox="0 0 24 23" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M17.5998 9.47059V3.04412L11.1998 0L4.79994 3.04412V10.1471L0 12.3456V19.7868L6.39991 22.8309L11.9998 20.2941L17.5998 23L23.9997 19.9559V12.3456L17.5998 9.47059ZM11.1998 1.86029L15.6798 3.88971L11.3598 5.75L7.1999 3.72059L11.1998 1.86029ZM11.1998 6.76471V11.6691L6.39991 9.47059V4.39706L11.1998 6.76471ZM6.39991 21.1397L1.59998 18.9412V13.8676L6.39991 16.2353V21.1397ZM6.39991 15.2206L2.23997 13.1912L6.39991 11.3309L10.8799 13.3603L6.39991 15.2206ZM17.5998 21.1397L12.7998 18.9412V13.8676L17.5998 16.2353V21.1397ZM17.5998 15.2206L13.4398 13.1912L17.5998 11.3309L22.0797 13.3603L17.5998 15.2206Z" fill="#555F65"/>
</svg>

After

Width:  |  Height:  |  Size: 725 B

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18.9998 11.0001L18.9999 8.00009C18.9999 2.5 14.4999 1.0001 12.1461 1.0001C12.073 1.0001 11.9268 0.998781 11.8537 1.0001C9.49993 1.0001 4.99999 2.5 4.99999 8.00144V11C4.39797 11 4.0001 11.357 4.0001 11.9997L4 20.8879C4 21.4996 4.55482 22 5.03531 22L18.9999 21.9999C19.4804 21.9999 19.9998 21.4995 19.9998 20.8879L19.9999 11.9997C19.9998 11.5001 19.9998 11.0001 18.9998 11.0001ZM15.9998 11H12.1461H11.8537L7.99995 11.0001V8.00009C7.99995 4.00009 11.3966 4.00009 11.9999 4.00009C12.6032 4.00009 15.9998 4.00009 15.9998 8.00009V11Z" fill="#657077"/>
</svg>

After

Width:  |  Height:  |  Size: 659 B

View File

@ -0,0 +1,11 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<path d="M18.2497 0H15.9997H7.99981H5.74984C4.23286 0 2.99988 1.233 2.99988 2.75V21.25C2.99988 22.767 4.23286 24 5.74984 24H18.2497C19.7667 24 20.9996 22.767 20.9996 21.25V2.75C20.9996 1.233 19.7667 0 18.2497 0ZM18.9997 21C18.9997 21.552 18.5517 22 17.9997 22H5.99984C5.44784 22 4.99985 21.552 4.99985 21V3C4.99985 2.448 5.44784 2 5.99984 2H7.49982C8.05181 2 8.4998 2.448 8.4998 3C8.4998 3.552 8.9478 4 9.49979 4H14.4997C15.0517 4 15.4997 3.552 15.4997 3C15.4997 2.448 15.9477 2 16.4997 2H17.9997C18.5517 2 18.9997 2.448 18.9997 3V21Z" fill="#657077"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M6.0321 8.27197C6.0321 7.04425 7.2725 6 8.50003 6C9.72773 6 11 7.04425 11 8.27197V13.98H9.50001V11.5H7.50004V13.98L6 14L6.0321 8.27197ZM17.9998 14H11.9999V12H17.9998V14ZM12 11H17.9998V9H11.9999L12 11ZM18.0319 17H6.0321L6 15H17.9998L18.0319 17ZM11.9999 8H17.9998L17.9999 6H12L11.9999 8ZM18.0319 20H6V18H17.9998L18.0319 20ZM8.49996 7.5C7.94768 7.5 7.49996 7.94772 7.49996 8.5V10H9.49996V8.5C9.49996 7.94772 9.05224 7.5 8.49996 7.5Z" fill="#657077"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="23.9997" height="24" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23.9997 10.125C23.9997 7.6875 21.9959 6.3012 19.6074 6.30176C19.4722 6.30176 19.3321 6.30344 19.1897 6.31203C19.0207 2.80507 15.8918 3.11419e-05 12.0701 3.11419e-05C10.5022 -0.00445394 8.97752 0.475636 7.73645 1.36462C6.58501 2.18744 5.88495 3.21708 5.43743 4.5C2.40569 4.5 0.000402814 6.75 0.000402814 9.95847V9.98762L0 10.3716C0.000402814 12.9554 2.26583 15.0449 5.05049 15.0449H18.9496C21.7343 15.0449 23.9997 13.6875 23.9997 10.875V10.125Z" fill="#657077"/>
<path d="M11.9133 21.8836H8.92795C7.92651 21.8836 7.11179 21.0691 7.11179 20.0679C7.11179 19.254 7.63935 18.5629 8.36592 18.327V18.6858C8.36592 18.9062 8.50147 19.0601 8.69557 19.0601C8.76989 19.0601 8.84489 19.0368 8.91852 18.9908L10.6012 17.9402C10.727 17.8616 10.7991 17.7434 10.7991 17.6159C10.7991 17.4889 10.7274 17.3712 10.6023 17.2931L8.91856 16.2426C8.84489 16.1966 8.76989 16.1732 8.69557 16.1732C8.50147 16.1732 8.36592 16.3272 8.36592 16.5475V16.8497C6.84193 17.1135 5.6785 18.4561 5.6785 20.068C5.6785 21.8618 7.13619 23.3212 8.92795 23.3212H11.9133C12.3091 23.3212 12.63 22.9994 12.63 22.6024C12.63 22.2055 12.3091 21.8836 11.9133 21.8836Z" fill="#657077"/>
<path d="M15.3264 16.8161C17.1182 16.8161 18.5759 18.2836 18.5759 20.0873C18.5759 20.9578 18.2407 21.7752 17.6322 22.3891C17.1526 22.8728 16.547 23.1848 15.8884 23.2967V23.6257C15.8884 23.8461 15.7529 24 15.5588 24C15.4845 24 15.4095 23.9766 15.3358 23.9306L13.652 22.8801C13.5269 22.802 13.4552 22.6843 13.4552 22.5573C13.4552 22.4298 13.5274 22.3116 13.6532 22.233L15.3358 21.1824C15.4095 21.1364 15.4845 21.1131 15.5588 21.1131C15.7529 21.1131 15.8884 21.267 15.8884 21.4874V21.8197C16.615 21.5849 17.1426 20.8972 17.1426 20.0873C17.1426 19.0762 16.3279 18.2537 15.3264 18.2537H12.341C11.9452 18.2537 11.6244 17.9319 11.6244 17.5349C11.6244 17.1379 11.9452 16.8161 12.341 16.8161H15.3264Z" fill="#657077"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1,10 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.25626 2.07122C7.22961 0.724734 9.55902 0 12.0001 0C14.4413 0 16.7706 0.724734 18.7439 2.07122L14.5895 6.22575C13.7857 5.8649 12.9075 5.67483 12 5.67483C11.0926 5.67483 10.2144 5.8649 9.41067 6.22575L5.25626 2.07122Z" fill="#657077"/>
<path d="M3.5147 3.51482C3.70018 3.32933 3.89119 3.1513 4.08637 2.97955L8.11432 7.00775C7.90981 7.16755 7.71373 7.34089 7.52722 7.52746C7.34075 7.71388 7.16737 7.90996 7.00743 8.11461L2.97944 4.0865C3.15119 3.89127 3.32917 3.7003 3.5147 3.51482Z" fill="#657077"/>
<path d="M7.00757 15.8855C7.16737 16.09 7.34075 16.2861 7.52727 16.4726C7.71373 16.6591 7.90981 16.8325 8.11436 16.9925L4.08637 21.0206C3.89114 20.8489 3.70018 20.6708 3.5147 20.4854C3.32917 20.2999 3.15114 20.1089 2.97944 19.9137L7.00757 15.8855Z" fill="#657077"/>
<path d="M16.9918 15.8856C16.8319 16.0901 16.6585 16.2861 16.4721 16.4726C16.2856 16.6591 16.0895 16.8326 15.885 16.9923L19.9131 21.0206C20.1082 20.8488 20.2993 20.6708 20.4847 20.4853C20.6702 20.2998 20.8482 20.1088 21.0199 19.9136L16.9918 15.8856Z" fill="#657077"/>
<path d="M17.7741 9.41057L21.9285 5.25604C23.275 7.22938 23.9997 9.55884 23.9997 12C23.9997 14.4411 23.275 16.7706 21.9286 18.744L17.7741 14.5895C18.1349 13.7857 18.325 12.9075 18.325 12C18.325 11.0925 18.1349 10.2143 17.7741 9.41057Z" fill="#657077"/>
<path d="M20.4847 3.51479C20.2992 3.3293 20.1082 3.15136 19.913 2.97961L15.885 7.00767C16.0896 7.16756 16.2857 7.34091 16.4721 7.52742C16.6586 7.71389 16.832 7.91002 16.9918 8.11449L21.0198 4.08638C20.8481 3.89124 20.6702 3.70027 20.4847 3.51479Z" fill="#657077"/>
<path d="M12 18.3252C12.9074 18.3252 13.7856 18.1352 14.5894 17.7743L18.7439 21.9289C16.7705 23.2753 14.4412 24 12.0001 24C9.55898 24 7.22956 23.2754 5.25626 21.9289L9.41062 17.7743C10.2144 18.1352 11.0926 18.3252 12 18.3252Z" fill="#657077"/>
<path d="M6.22559 9.41069L2.07114 5.25616C0.724722 7.22951 0 9.55886 0 12C0 14.4412 0.724722 16.7706 2.07118 18.744L6.22559 14.5894C5.86476 13.7857 5.67473 12.9076 5.67473 12.0001C5.67473 11.0927 5.86476 10.2145 6.22559 9.41069Z" fill="#657077"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18.9998 11.0001L18.9999 8.00009C18.9999 2.5 14.4999 1.0001 12.1461 1.0001C12.073 1.0001 11.9268 0.998781 11.8537 1.0001C9.49993 1.0001 4.99999 2.5 4.99999 8.00144V11C4.39797 11 4.0001 11.357 4.0001 11.9997L4 20.8879C4 21.4996 4.55482 22 5.03531 22L18.9999 21.9999C19.4804 21.9999 19.9998 21.4995 19.9998 20.8879L19.9999 11.9997C19.9998 11.5001 19.9998 11.0001 18.9998 11.0001ZM15.9998 11H12.1461H11.8537L7.99995 11.0001V8.00009C7.99995 4.00009 11.3966 4.00009 11.9999 4.00009C12.6032 4.00009 15.9998 4.00009 15.9998 8.00009V11Z" fill="#333333"/>
</svg>

After

Width:  |  Height:  |  Size: 659 B

View File

@ -0,0 +1,11 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<path d="M18.2497 0H15.9997H7.99981H5.74984C4.23286 0 2.99988 1.233 2.99988 2.75V21.25C2.99988 22.767 4.23286 24 5.74984 24H18.2497C19.7667 24 20.9996 22.767 20.9996 21.25V2.75C20.9996 1.233 19.7667 0 18.2497 0ZM18.9997 21C18.9997 21.552 18.5517 22 17.9997 22H5.99984C5.44784 22 4.99985 21.552 4.99985 21V3C4.99985 2.448 5.44784 2 5.99984 2H7.49982C8.05181 2 8.4998 2.448 8.4998 3C8.4998 3.552 8.9478 4 9.49979 4H14.4997C15.0517 4 15.4997 3.552 15.4997 3C15.4997 2.448 15.9477 2 16.4997 2H17.9997C18.5517 2 18.9997 2.448 18.9997 3V21Z" fill="#333333"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M6.0321 8.27197C6.0321 7.04425 7.2725 6 8.50003 6C9.72773 6 11 7.04425 11 8.27197V13.98H9.50001V11.5H7.50004V13.98L6 14L6.0321 8.27197ZM17.9998 14H11.9999V12H17.9998V14ZM12 11H17.9998V9H11.9999L12 11ZM18.0319 17H6.0321L6 15H17.9998L18.0319 17ZM11.9999 8H17.9998L17.9999 6H12L11.9999 8ZM18.0319 20H6V18H17.9998L18.0319 20ZM8.49996 7.5C7.94768 7.5 7.49996 7.94772 7.49996 8.5V10H9.49996V8.5C9.49996 7.94772 9.05224 7.5 8.49996 7.5Z" fill="#333333"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="23.9997" height="24" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23.9997 10.125C23.9997 7.6875 21.9959 6.3012 19.6074 6.30176C19.4722 6.30176 19.3321 6.30344 19.1897 6.31203C19.0207 2.80507 15.8918 3.11419e-05 12.0701 3.11419e-05C10.5022 -0.00445394 8.97752 0.475636 7.73645 1.36462C6.58501 2.18744 5.88495 3.21708 5.43743 4.5C2.40569 4.5 0.000402814 6.75 0.000402814 9.95847V9.98762L0 10.3716C0.000402814 12.9554 2.26583 15.0449 5.05049 15.0449H18.9496C21.7343 15.0449 23.9997 13.6875 23.9997 10.875V10.125Z" fill="#333333"/>
<path d="M11.9133 21.8836H8.92795C7.92651 21.8836 7.11179 21.0691 7.11179 20.0679C7.11179 19.254 7.63935 18.5629 8.36592 18.327V18.6858C8.36592 18.9062 8.50147 19.0601 8.69557 19.0601C8.76989 19.0601 8.84489 19.0368 8.91852 18.9908L10.6012 17.9402C10.727 17.8616 10.7991 17.7434 10.7991 17.6159C10.7991 17.4889 10.7274 17.3712 10.6023 17.2931L8.91856 16.2426C8.84489 16.1966 8.76989 16.1732 8.69557 16.1732C8.50147 16.1732 8.36592 16.3272 8.36592 16.5475V16.8497C6.84193 17.1135 5.6785 18.4561 5.6785 20.068C5.6785 21.8618 7.13619 23.3212 8.92795 23.3212H11.9133C12.3091 23.3212 12.63 22.9994 12.63 22.6024C12.63 22.2055 12.3091 21.8836 11.9133 21.8836Z" fill="#333333"/>
<path d="M15.3264 16.8161C17.1182 16.8161 18.5759 18.2836 18.5759 20.0873C18.5759 20.9578 18.2407 21.7752 17.6322 22.3891C17.1526 22.8728 16.547 23.1848 15.8884 23.2967V23.6257C15.8884 23.8461 15.7529 24 15.5588 24C15.4845 24 15.4095 23.9766 15.3358 23.9306L13.652 22.8801C13.5269 22.802 13.4552 22.6843 13.4552 22.5573C13.4552 22.4298 13.5274 22.3116 13.6532 22.233L15.3358 21.1824C15.4095 21.1364 15.4845 21.1131 15.5588 21.1131C15.7529 21.1131 15.8884 21.267 15.8884 21.4874V21.8197C16.615 21.5849 17.1426 20.8972 17.1426 20.0873C17.1426 19.0762 16.3279 18.2537 15.3264 18.2537H12.341C11.9452 18.2537 11.6244 17.9319 11.6244 17.5349C11.6244 17.1379 11.9452 16.8161 12.341 16.8161H15.3264Z" fill="#333333"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -13,7 +13,7 @@ import {
Error404,
StudioLayout,
Offline,
ComingSoon
ComingSoon,
} from "asc-web-common";
import Home from "./components/pages/Home";
//import store from "./store/store";
@ -22,12 +22,12 @@ const About = lazy(() => import("./components/pages/About"));
const Confirm = lazy(() => import("./components/pages/Confirm"));
const Settings = lazy(() => import("./components/pages/Settings"));
const Wizard = lazy(() => import("./components/pages/Wizard"));
const Payments = lazy(() => import("./components/pages/Payments"));
const {
setIsLoaded,
getUser,
getPortalSettings,
getModules
getModules,
} = CommonStore.auth.actions;
class App extends React.Component {
@ -62,7 +62,7 @@ class App extends React.Component {
axios
.all(requests)
.catch(e => {
.catch((e) => {
console.log("INIT REQUESTS FAILED", e);
})
.finally(() => {
@ -87,7 +87,7 @@ class App extends React.Component {
path={[
"/login",
"/login/error=:error",
"/login/confirmed-email=:confirmedEmail"
"/login/confirmed-email=:confirmedEmail",
]}
component={Login}
/>
@ -104,6 +104,7 @@ class App extends React.Component {
path={["/coming-soon"]}
component={ComingSoon}
/>
<PrivateRoute path="/payments" component={Payments} />
<PrivateRoute component={Error404} />
</Switch>
</Suspense>
@ -115,27 +116,24 @@ class App extends React.Component {
}
}
const mapStateToProps = state => {
const mapStateToProps = (state) => {
const { modules, isLoaded, settings } = state.auth;
const { homepage, organizationName } = settings;
return {
modules,
isLoaded,
homepage,
organizationName
organizationName,
};
};
const mapDispatchToProps = dispatch => {
const mapDispatchToProps = (dispatch) => {
return {
getPortalSettings: () => getPortalSettings(dispatch),
getUser: () => getUser(dispatch),
getModules: () => getModules(dispatch),
setIsLoaded: () => dispatch(setIsLoaded(true))
setIsLoaded: () => dispatch(setIsLoaded(true)),
};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(App);
export default connect(mapStateToProps, mapDispatchToProps)(App);

View File

@ -0,0 +1,20 @@
import React from "react";
import { withRouter } from "react-router";
import { connect } from "react-redux";
import PaymentsEnterprise from "../PaymentsEnterprise";
import PaymentsSaaS from "../PaymentsSaaS";
class Payments extends React.Component {
render() {
const { standaloneMode } = this.props;
return standaloneMode ? <PaymentsEnterprise /> : <PaymentsSaaS />;
}
}
function mapStateToProps(state) {
return {
standaloneMode: state.payments.standaloneMode,
};
}
export default connect(mapStateToProps)(withRouter(Payments));

View File

@ -0,0 +1,103 @@
import React, { useEffect } from "react";
import { PageLayout, utils, store } from "asc-web-common";
import { Loader, utils as Utils } from "asc-web-components";
import styled from "styled-components";
import { withRouter } from "react-router";
import { connect } from "react-redux";
import { withTranslation } from "react-i18next";
import PropTypes from "prop-types";
import HeaderContainer from "./sub-components/headerContainer";
import AdvantagesContainer from "./sub-components/advantagesContainer";
import ButtonContainer from "./sub-components/buttonContainer";
import ContactContainer from "./sub-components/contactContainer";
import { getSettingsPayment } from "../../../store/payments/actions";
import { createI18N } from "../../../helpers/i18n";
import { setDocumentTitle } from "../../../helpers/utils";
const i18n = createI18N({
page: "PaymentsEnterprise",
localesPath: "pages/PaymentsEnterprise",
});
const { setCurrentProductId } = store.auth.actions;
const { changeLanguage } = utils;
const { tablet, size } = Utils.device;
const StyledBody = styled.div`
margin: 0 auto;
max-width: 920px;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: repeat(4, min-content);
overflow-wrap: anywhere;
margin-top: 40px;
@media ${tablet} {
max-width: ${size.smallTablet}px;
}
@media (max-width: 632px) {
min-width: 343px;
margin-top: 0;
}
`;
class Body extends React.Component {
constructor(props) {
super(props);
const { t } = this.props;
setDocumentTitle(`${t("Payments")}`);
}
componentDidMount() {
const {
getSettingsPayment,
currentProductId,
setCurrentProductId,
} = this.props;
currentProductId !== "payments" && setCurrentProductId("payments");
getSettingsPayment();
}
render() {
const { isLoaded } = this.props;
return !isLoaded ? (
<Loader className="pageLoader" type="rombs" size="40px" />
) : (
<StyledBody>
<HeaderContainer />
<AdvantagesContainer />
<ButtonContainer />
<ContactContainer />
</StyledBody>
);
}
}
const PaymentsWrapper = withTranslation()(Body);
const PaymentsEnterprise = (props) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
return (
<PageLayout>
<PageLayout.SectionBody>
<PaymentsWrapper {...props} i18n={i18n} />
</PageLayout.SectionBody>
</PageLayout>
);
};
PaymentsEnterprise.propTypes = {
isLoaded: PropTypes.bool,
};
function mapStateToProps({ auth }) {
const { isLoaded } = auth;
return {
isLoaded,
};
}
export default connect(mapStateToProps, {
setCurrentProductId,
getSettingsPayment,
})(withRouter(PaymentsEnterprise));

View File

@ -0,0 +1,29 @@
{
"PaymentsTitle": "Payments",
"ContactEmail": "For any purchase questions, contact us at ",
"ContactUrl": "For for solving technical issues, use",
"SubscriptionRenewedLicense": "Renew subscription to get:",
"AdvantageEditor": "{{organizationName}} editors with pro features",
"AdvantagePrivateRooom": "Private Rooom for encrypted collaboretion",
"AdvantageWebEditors": "Mobile web editors",
"AdvantageUpdates": "Regular functionality and security updates during 1 year",
"AdvantageProfessionalTechSupport": "1 year of professional tech support service",
"HeaderLicense": "You are using {{organizationName}} Enterprise Edition",
"HeaderExpiredTrialLicense": "Free trial period has expired",
"AccessSubscription": "Your subscription for support and updates expires on",
"ExpiryPaidLicense": "Support is no longer available for your license since",
"ExpiryTrialLicense": "Thank you for having checked out {{organizationName}}!",
"RenewalLicense": "If you have already purchased the renewal, upload the license file.",
"ButtonBuyLicense": "Buy now",
"ButtonUploadLicense": "Upload license",
"ErrorLicense": "Licence is not valid",
"ErrorLoadingLicense": "Make sure you choose the right file",
"SuccessLoadingLicense": "License activated successfully"
}

View File

@ -0,0 +1,29 @@
{
"PaymentsTitle": "Платежи",
"ContactEmail": "По вопросам покупки свяжитесь с нами по адресу",
"ContactUrl": "Для решения технических проблем используйте",
"SubscriptionRenewedLicense": "Обновите подписку, чтобы получить:",
"AdvantageEditor": "Редакторы {{organizationName}} с профессиональными возможностями",
"AdvantagePrivateRooom": "Приватная комната для зашифрованной совместной работы",
"AdvantageWebEditors": "Мобильные веб-редакторы",
"AdvantageUpdates": "Регулярные обновления функциональных возможностей и безопасности в течение 1 года",
"AdvantageProfessionalTechSupport": "1 год услуг профессиональной технической поддержки",
"HeaderLicense": "Вы используете {{organizationName}} Enterprise Edition",
"HeaderExpiredTrialLicense": "Бесплатный пробный период истек",
"AccessSubscription": "Техническая поддержка и обновления недоступны для вашей лицензии с",
"ExpiryPaidLicense": "Техническая поддержка больше не доступна для вашей лицензии с",
"ExpiryTrialLicense": "Благодарим Вас за то, что опробовали {{organizationName}}!",
"RenewalLicense": " Если вы уже купили обновление, загрузите файл лицензии.",
"ButtonBuyLicense": "Купить сейчас",
"ButtonUploadLicense": "Загрузить лицензию",
"ErrorLicense": "Лицензия не действительна",
"ErrorLoadingLicense": "Проверьте загружаемый файл",
"SuccessLoadingLicense": "Лицензия успешно активирована"
}

View File

@ -0,0 +1,130 @@
import React, { useEffect } from "react";
import { connect } from "react-redux";
import styled from "styled-components";
import { utils } from "asc-web-common";
import { Text, utils as Utils, Box } from "asc-web-components";
import { createI18N } from "../../../../helpers/i18n";
import { useTranslation, Trans } from "react-i18next";
const { changeLanguage } = utils;
const { tablet } = Utils.device;
const i18n = createI18N({
page: "PaymentsEnterprise",
localesPath: "pages/PaymentsEnterprise",
});
const StyledBodyAdvantages = styled.div`
display: grid;
padding: 32px;
grid-template-columns: 1fr;
grid-template-rows: repeat(4, min-content);
grid-row-gap: 18px;
background: url("images/payments_enterprise.svg") #f8f9f9 bottom 32px right
32px no-repeat;
.header-advantages {
line-height: 30px;
padding-bottom: 15px;
}
.row-advantages {
display: flex;
.wrapper {
align-items: center;
}
}
@media ${tablet} {
background: #f8f9f9;
}
`;
const AdvantagesContainer = ({ organizationName }) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
const { t } = useTranslation("translation", { i18n });
return (
<StyledBodyAdvantages>
<Text className="header-advantages" fontSize="22px" isBold={true}>
{t("SubscriptionRenewedLicense")}
</Text>
<Box className="row-advantages">
<img
src="images/payments_enterprise_cubes.svg"
width="24px"
height="23px"
alt="Icon_cubes"
/>
<Box className="wrapper" marginProp="0 0 0 8px">
<Text isBold={true}>
<Trans i18nKey="AdvantageEditor" i18n={i18n}>
{{ organizationName }}
</Trans>
</Text>
</Box>
</Box>
<Box className="row-advantages">
<img
src="images/payments_enterprise_lock.svg"
width="24px"
height="23px"
alt="Icon_lock"
/>
<Box className="wrapper" marginProp="0 0 0 8px">
<Text isBold={true}>{t("AdvantagePrivateRooom")}</Text>
</Box>
</Box>
<Box className="row-advantages">
<img
src="images/payments_enterprise_smartphone.svg"
width="24px"
height="23px"
alt="Icon_smartphone"
/>
<Box className="wrapper" marginProp="0 0 0 8px">
<Text isBold={true}>{t("AdvantageWebEditors")}</Text>
</Box>
</Box>
<Box className="row-advantages">
<img
src="images/payments_enterprise_update.svg"
width="24px"
height="23px"
alt="Icon_update"
/>
<Box className="wrapper" marginProp="0 0 0 8px">
<Text isBold={true}>{t("AdvantageUpdates")}</Text>
</Box>
</Box>
<Box className="row-advantages">
<img
src="images/payments_enterprise_help.svg"
width="24px"
height="23px"
alt="Icon_help"
/>
<Box className="wrapper" marginProp="0 0 0 8px">
<Text isBold={true}>{t("AdvantageProfessionalTechSupport")}</Text>
</Box>
</Box>
</StyledBodyAdvantages>
);
};
function mapStateToProps({ auth }) {
const { organizationName } = auth.settings;
return {
organizationName,
};
}
export default connect(mapStateToProps)(AdvantagesContainer);

View File

@ -0,0 +1,125 @@
import React, { useEffect, createRef } from "react";
import styled from "styled-components";
import PropTypes from "prop-types";
import { connect } from "react-redux";
import { withRouter } from "react-router";
import { Button, utils as Utils, toastr } from "asc-web-components";
import { withTranslation, I18nextProvider } from "react-i18next";
import { createI18N } from "../../../../helpers/i18n";
import { utils } from "asc-web-common";
import { setPaymentsLicense } from "../../../../store/payments/actions";
const { changeLanguage } = utils;
const { tablet } = Utils.device;
const i18n = createI18N({
page: "PaymentsEnterprise",
localesPath: "pages/PaymentsEnterprise",
});
const StyledButtonContainer = styled.div`
background: #edf2f7;
margin-bottom: 16px;
display: grid;
padding: 32px;
grid-template-columns: min-content min-content;
grid-template-rows: min-content;
grid-column-gap: 16px;
.input-upload {
display: none;
}
@media ${tablet} {
grid-template-columns: 1fr;
grid-template-rows: min-content min-content;
grid-row-gap: 16px;
}
`;
class Body extends React.PureComponent {
constructor(props) {
super(props);
this.inputFilesElementRef = createRef(null);
}
onClickSubmit = () => {
this.inputFilesElementRef &&
this.inputFilesElementRef.current &&
this.inputFilesElementRef.current.click();
};
onClickUpload = (e) => {
const { setPaymentsLicense, t } = this.props;
let fd = new FormData();
fd.append("files", e.currentTarget.files[0]);
setPaymentsLicense(null, fd)
.then(() => {
toastr.success(t("LoadingLicenseSuccess"), "");
})
.catch((error) => {
toastr.error(t("LoadingLicenseError"), "LicenseIsNotValid", 0, true);
console.log(error);
});
};
onClickBuy = (e) => {
window.open(e.target.value, "_blank");
};
render() {
const { t } = this.props;
const { buyUrl } = this.props;
return (
<StyledButtonContainer>
<Button
label={t("ButtonBuyLicense")}
value={`${buyUrl}`}
size="large"
primary={true}
onClick={this.onClickBuy}
/>
<input
type="file"
className="input-upload"
accept=".lic"
ref={this.inputFilesElementRef}
onInput={this.onClickUpload}
/>
<Button
type="submit"
label={t("ButtonUploadLicense")}
size="large"
primary={true}
onClick={this.onClickSubmit}
/>
</StyledButtonContainer>
);
}
}
const ButtonWrapper = withTranslation()(Body);
const ButtonContainer = (props) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
return (
<I18nextProvider i18n={i18n}>
<ButtonWrapper {...props} />
</I18nextProvider>
);
};
ButtonContainer.propTypes = {
buyUrl: PropTypes.string,
};
function mapStateToProps(state) {
const { buyUrl } = state.payments;
return {
buyUrl,
};
}
export default connect(mapStateToProps, { setPaymentsLicense })(
ButtonContainer
);

View File

@ -0,0 +1,60 @@
import React, { useEffect } from "react";
import PropTypes from "prop-types";
import styled from "styled-components";
import { connect } from "react-redux";
import { withRouter } from "react-router";
import { Text, Link } from "asc-web-components";
import { useTranslation } from "react-i18next";
import { createI18N } from "../../../../helpers/i18n";
import { utils } from "asc-web-common";
const { changeLanguage } = utils;
const i18n = createI18N({
page: "PaymentsEnterprise",
localesPath: "pages/PaymentsEnterprise",
});
const StyledContactContainer = styled.div`
display: grid;
grid-template-columns: 1fr;
grid-template-rows: repeat(min-content, 2);
grid-row-gap: 11px;
`;
const ContactContainer = ({ salesEmail, helpUrl }) => {
useEffect(() => {
changeLanguage(i18n);
}, []);
const { t } = useTranslation("translation", { i18n });
return (
<StyledContactContainer>
<Text>
{t("ContactEmail")}{" "}
<Link href={`mailto:${salesEmail}`} color="#316daa">
{salesEmail}
</Link>
</Text>
<Text>
{t("ContactUrl")}{" "}
<Link target="_blank" href={`${helpUrl}`} color="#316daa">
{helpUrl}
</Link>
</Text>
</StyledContactContainer>
);
};
ContactContainer.propTypes = {
salesEmail: PropTypes.string,
helpUrl: PropTypes.string,
};
function mapStateToProps(state) {
return {
salesEmail: state.payments.salesEmail,
helpUrl: state.payments.helpUrl,
};
}
export default connect(mapStateToProps)(withRouter(ContactContainer));

View File

@ -0,0 +1,119 @@
import React, { useEffect } from "react";
import PropTypes from "prop-types";
import styled from "styled-components";
import { connect } from "react-redux";
import { withRouter } from "react-router";
import { Text } from "asc-web-components";
import { utils } from "asc-web-common";
import { useTranslation, Trans } from "react-i18next";
import { createI18N } from "../../../../helpers/i18n";
import moment from "moment";
const { changeLanguage } = utils;
const i18n = createI18N({
page: "PaymentsEnterprise",
localesPath: "pages/PaymentsEnterprise",
});
const StyledHeader = styled.div`
display: grid;
grid-template-columns: 1fr;
grid-template-rows: min-content min-content;
grid-row-gap: 8px;
.payments-header {
font-style: normal;
line-height: 32px;
}
.payments-header-additional_support {
margin-bottom: 40px;
line-height: 20px;
}
@media (max-width: 632px) {
.payments-header-additional_support {
margin-bottom: 16px;
}
}
`;
const HeaderContainer = ({
culture,
trialMode,
expiresDate,
organizationName,
}) => {
useEffect(() => {
changeLanguage(i18n);
const moment = require("moment");
require("moment/min/locales.min");
culture && moment.locale(culture);
}, [culture]);
const { t } = useTranslation("translation", { i18n });
const now = moment();
const licenseDate = moment(expiresDate);
const licenseDateString = licenseDate.startOf("day").format("D MMMM, YYYY");
return licenseDate.isAfter(now, "day") ? (
<StyledHeader>
<Text className="payments-header" fontSize="27px" isBold={true}>
<Trans i18nKey="HeaderLicense" i18n={i18n}>
{{ organizationName }}
</Trans>
</Text>
<Text className="payments-header-additional_support">
{t("AccessSubscription")} {licenseDateString}
{"."}
</Text>
</StyledHeader>
) : !trialMode ? (
<StyledHeader>
<Text className="payments-header" fontSize="27px" isBold={true}>
<Trans i18nKey="HeaderLicense" i18n={i18n}>
{{ organizationName }}
</Trans>
</Text>
<Text
className="payments-header-additional_support"
color="#C96C27"
fontWeight="600"
>
{t("ExpiryPaidLicense")} {licenseDateString}
{". "}
{t("RenewalLicense")}
</Text>
</StyledHeader>
) : (
<StyledHeader>
<Text className="payments-header" fontSize="27px" isBold={true}>
{t("HeaderExpiredTrialLicense")}
</Text>
<Text className="payments-header-additional_support">
<Trans i18nKey="ExpiryTrialLicense" i18n={i18n}>
{{ organizationName }}
</Trans>
</Text>
</StyledHeader>
);
};
HeaderContainer.propTypes = {
culture: PropTypes.string,
expiresDate: PropTypes.object,
trialMode: PropTypes.bool,
};
function mapStateToProps({ auth, payments }) {
const { culture, organizationName } = auth.settings;
const { expiresDate, trialMode } = payments.currentLicense;
return {
culture,
expiresDate,
trialMode,
organizationName,
};
}
export default connect(mapStateToProps)(withRouter(HeaderContainer));

View File

@ -0,0 +1,10 @@
import React from "react";
import { Text } from "asc-web-components";
class PaymentsSaaS extends React.Component {
render() {
return <Text>Comming soon</Text>;
}
}
export default PaymentsSaaS;

View File

@ -40,7 +40,7 @@ const i18n = createI18N({
});
const { tablet } = utils.device;
const { changeLanguage } = commonUtils;
const { changeLanguage, createPasswordHash } = commonUtils;
const { EmailSettings } = utils.email;
const emailSettings = new EmailSettings();
@ -222,7 +222,7 @@ class Body extends Component {
const valid = this.checkingValid();
if (valid) {
const { setPortalOwner, wizardToken } = this.props;
const { setPortalOwner, wizardToken, hashSettings } = this.props;
const {
password,
@ -238,10 +238,11 @@ class Body extends Component {
const analytics = true;
// console.log(emailTrim, password, selectLanguage.key, selectTimezone.key, analytics, wizardToken);
const hash = createPasswordHash(password, hashSettings);
setPortalOwner(
emailTrim,
password,
hash,
selectLanguage.key,
selectTimezone.key,
wizardToken,
@ -442,7 +443,6 @@ class Body extends Component {
<form className="wizard-form">
<InputContainer
t={t}
s
settingsPassword={passwordSettings}
emailNeeded={emailNeeded}
password={password}
@ -543,6 +543,7 @@ function mapStateToProps({ wizard, auth }) {
timezones,
timezone,
urlLicense,
hashSettings,
} = auth.settings;
return {
@ -558,6 +559,7 @@ function mapStateToProps({ wizard, auth }) {
urlLicense,
isLicenseRequired,
licenseUpload,
hashSettings,
};
}

View File

@ -0,0 +1,31 @@
import { api } from "asc-web-common";
export const SET_PAYMENTS_SETTINGS = "SET_PAYMENTS_SETTINGS";
export function setSettings(settings) {
return {
type: SET_PAYMENTS_SETTINGS,
settings,
};
}
export function getSettingsPayment() {
return (dispatch) => {
return api.settings.getPaymentSettings().then((settings) => {
dispatch(setSettings(settings));
});
};
}
export function setPaymentsLicense(confirmKey, data) {
return (dispatch) => {
return api.settings
.setLicense(confirmKey, data)
.then(() => dispatch(acceptPaymentsLicense()))
.then(() => dispatch(getSettingsPayment()));
};
}
export function acceptPaymentsLicense() {
return () => {
return api.settings.acceptLicense().then((res) => console.log(res));
};
}

View File

@ -0,0 +1,48 @@
import { SET_PAYMENTS_SETTINGS } from "./actions";
const initialState = {
salesEmail: "sales@onlyoffice.com",
helpUrl: "https://helpdesk.onlyoffice.com",
buyUrl:
"https://www.onlyoffice.com/enterprise-edition.aspx?type=buyenterprise",
standaloneMode: true,
currentLicense: {
expiresDate: new Date(),
trialMode: true,
},
};
const paymentsReducer = (state = initialState, action) => {
switch (action.type) {
case SET_PAYMENTS_SETTINGS:
const {
buyUrl,
salesEmail,
currentLicense,
standalone: standaloneMode,
feedbackAndSupportUrl: helpUrl,
} = action.settings;
return Object.assign({}, state, {
salesEmail,
buyUrl,
helpUrl,
standaloneMode,
currentLicense: Object.assign({}, state.currentLicense, {
expiresDate:
currentLicense && currentLicense.date
? new Date(currentLicense.date)
: state.currentLicense.expiresDate,
trialMode:
currentLicense && currentLicense.trial
? currentLicense.trial
: state.currentLicense.trial,
}),
});
default:
return state;
}
};
export default paymentsReducer;

View File

@ -1,16 +1,18 @@
import { combineReducers } from 'redux';
import settingsReducer from './settings/reducer';
import confirmReducer from './confirm/reducer';
import { store } from 'asc-web-common';
import wizardReducer from './wizard/reducer';
import { combineReducers } from "redux";
import settingsReducer from "./settings/reducer";
import confirmReducer from "./confirm/reducer";
import { store } from "asc-web-common";
import wizardReducer from "./wizard/reducer";
import paymentsReducer from "./payments/reducer";
const { reducer: authReducer } = store.auth;
const rootReducer = combineReducers({
auth: authReducer,
settings: settingsReducer,
confirm: confirmReducer,
wizard: wizardReducer
auth: authReducer,
settings: settingsReducer,
confirm: confirmReducer,
wizard: wizardReducer,
payments: paymentsReducer,
});
export default rootReducer;
export default rootReducer;

View File

@ -1,14 +1,14 @@
import { store, api } from "asc-web-common";
const {
setPasswordSettings,
setTimezones,
const {
setPasswordSettings,
setTimezones,
setPortalCultures,
getPortalSettings,
setWizardComplete
setWizardComplete,
} = store.auth.actions;
export const SET_IS_WIZARD_LOADED = 'SET_IS_WIZARD_LOADED';
export const SET_IS_MACHINE_NAME = 'SET_IS_MACHINE_NAME';
export const SET_IS_WIZARD_LOADED = "SET_IS_WIZARD_LOADED";
export const SET_IS_MACHINE_NAME = "SET_IS_MACHINE_NAME";
export const SET_IS_LICENSE_REQUIRED = "SET_IS_LICENSE_REQUIRED";
export const SET_LICENSE_UPLOAD = "SET_LICENSE_UPLOAD";
export const RESET_LICENSE_UPLOADED = "RESET_LICENSE_UPLOADED";
@ -16,88 +16,97 @@ export const RESET_LICENSE_UPLOADED = "RESET_LICENSE_UPLOADED";
export function setIsWizardLoaded(isWizardLoaded) {
return {
type: SET_IS_WIZARD_LOADED,
isWizardLoaded
isWizardLoaded,
};
};
}
export function setMachineName(machineName) {
return {
type: SET_IS_MACHINE_NAME,
machineName
machineName,
};
}
export function setIsRequiredLicense(isRequired) {
return {
type: SET_IS_LICENSE_REQUIRED,
isRequired
}
isRequired,
};
}
export function setLicenseUpload(message) {
return {
type: SET_LICENSE_UPLOAD,
message
}
message,
};
}
export function resetLicenseUploaded() {
return {
type: RESET_LICENSE_UPLOADED
}
type: RESET_LICENSE_UPLOADED,
};
}
export function getPortalPasswordSettings(token) {
return dispatch => {
return api.settings.getPortalPasswordSettings(token).then(settings => {
return (dispatch) => {
return api.settings.getPortalPasswordSettings(token).then((settings) => {
dispatch(setPasswordSettings(settings));
});
};
}
export function getPortalTimezones(token) {
return dispatch => {
return api.settings.getPortalTimezones(token).then(timezones => {
return (dispatch) => {
return api.settings.getPortalTimezones(token).then((timezones) => {
dispatch(setTimezones(timezones));
});
};
}
export function getPortalCultures() {
return dispatch => {
return api.settings.getPortalCultures().then(cultures => {
return (dispatch) => {
return api.settings.getPortalCultures().then((cultures) => {
dispatch(setPortalCultures(cultures));
});
};
}
export function getMachineName(token) {
return dispatch => {
return api.settings.getMachineName(token).then(machineName => {
return (dispatch) => {
return api.settings.getMachineName(token).then((machineName) => {
dispatch(setMachineName(machineName));
});
};
}
export function setPortalOwner(email, pwd, lng, timeZone, confirmKey, analytics) {
return dispatch => {
return api.settings.setPortalOwner(email, pwd, lng, timeZone, confirmKey, analytics)
export function setPortalOwner(
email,
hash,
lng,
timeZone,
confirmKey,
analytics
) {
return (dispatch) => {
return api.settings
.setPortalOwner(email, hash, lng, timeZone, confirmKey, analytics)
.then(() => dispatch(setWizardComplete()))
.then(() => getPortalSettings(dispatch))
}
.then(() => getPortalSettings(dispatch));
};
}
export function getIsRequiredLicense() {
return dispatch => {
return api.settings.getIsLicenseRequired()
.then(isRequired => dispatch(setIsRequiredLicense(isRequired)))
}
return (dispatch) => {
return api.settings
.getIsLicenseRequired()
.then((isRequired) => dispatch(setIsRequiredLicense(isRequired)));
};
}
export function setLicense(confirmKey, data) {
return dispatch => {
return api.settings.setLicense(confirmKey, data)
.then(res => dispatch(setLicenseUpload(res)))
}
}
return (dispatch) => {
return api.settings
.setLicense(confirmKey, data)
.then((res) => dispatch(setLicenseUpload(res)));
};
}

View File

@ -1528,17 +1528,17 @@
"@svgr/plugin-svgo" "^4.3.1"
loader-utils "^1.2.3"
"@tanem/svg-injector@^8.0.68":
version "8.0.69"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.69.tgz#ef41afc98c3c706ef16f7468991f558a82e567c9"
integrity sha512-/F4v9aXqvoa0bg+m0m/eRHnYkPxkkAfakLcB/hRIHQ9Fqwuxz1JBDxQ0xcgNkEJI4dN9uCCvAIUIoUoQieAp6g==
"@tanem/svg-injector@^8.0.70":
version "8.0.71"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.71.tgz#810e1b0de741c774d68722499a4a48fb61dfa9e9"
integrity sha512-JOlNQDnhWjWyR9g2P3cYA+CPiBstxS0rLoSFOFtHxavpwwPiQf2JtyqAqMVxgR8XV1USadLrTFUtk4fEq3Pxow==
dependencies:
"@babel/runtime" "^7.11.2"
"@types/babel__core@^7.1.0":
version "7.1.9"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d"
integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==
version "7.1.10"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.10.tgz#ca58fc195dd9734e77e57c6f2df565623636ab40"
integrity sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@ -1547,32 +1547,27 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
version "7.6.1"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
version "7.6.2"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.0.2"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
version "7.0.3"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.3.tgz#b8aaeba0a45caca7b56a5de9459872dde3727214"
integrity sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.14.tgz#e99da8c075d4fb098c774ba65dabf7dc9954bd13"
integrity sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==
version "7.0.15"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
dependencies:
"@babel/types" "^7.3.0"
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/eslint-visitor-keys@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
@ -1627,9 +1622,9 @@
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*":
version "14.11.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
version "14.11.2"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.2.tgz#2de1ed6670439387da1c9f549a2ade2b0a799256"
integrity sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==
"@types/parse-json@^4.0.0":
version "4.0.0"
@ -1659,9 +1654,9 @@
integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
version "13.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.10.tgz#e77bf3fc73c781d48c2eb541f87c453e321e5f4b"
integrity sha512-MU10TSgzNABgdzKvQVW1nuuT+sgBMWeXNc3XOs5YXV5SDAK+PPja2eUuBNB9iqElu03xyEDqlnGw0jgl4nbqGQ==
version "13.0.11"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.11.tgz#def2f0c93e4bdf2c61d7e34899b17e34be28d3b1"
integrity sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==
dependencies:
"@types/yargs-parser" "*"
@ -1911,14 +1906,14 @@ acorn@^5.5.3:
integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
acorn@^6.0.1, acorn@^6.0.4, acorn@^6.2.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
version "6.4.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
acorn@^7.1.0, acorn@^7.1.1:
version "7.4.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c"
integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==
version "7.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
add-dom-event-listener@^1.1.0:
version "1.1.0"
@ -2041,11 +2036,10 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
color-convert "^1.9.0"
ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
"@types/color-name" "^1.1.1"
color-convert "^2.0.1"
anymatch@^2.0.0:
@ -2177,7 +2171,7 @@ asap@~2.0.6:
integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
"asc-web-common@file:../../packages/asc-web-common":
version "1.0.231"
version "1.0.246"
dependencies:
axios "^0.19.1"
history "4.10.1"
@ -2187,9 +2181,10 @@ asap@~2.0.6:
react-viewer "^3.2.1"
react-window-infinite-loader "^1.0.5"
screenfull "^5.0.2"
sjcl "^1.0.8"
"asc-web-components@file:../../packages/asc-web-components":
version "1.0.449"
version "1.0.457"
dependencies:
email-addresses "^3.1.0"
html-to-react "^1.4.2"
@ -2744,12 +2739,12 @@ browserslist@4.10.0:
pkg-up "^3.1.0"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.8.5, browserslist@^4.9.1:
version "4.14.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.3.tgz#381f9e7f13794b2eb17e1761b4f118e8ae665a53"
integrity sha512-GcZPC5+YqyPO4SFnz48/B0YaCwS47Q9iPChRGi6t7HhflKBcINzFrJvRfC+jp30sRMKxF+d4EHGs27Z0XP1NaQ==
version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies:
caniuse-lite "^1.0.30001131"
electron-to-chromium "^1.3.570"
caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.571"
escalade "^3.1.0"
node-releases "^1.1.61"
@ -2939,10 +2934,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001131:
version "1.0.30001132"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001132.tgz#309279274f10d3aa736aa91fa269fcc8d0cd7ef9"
integrity sha512-zk5FXbnsmHa0Ktc/NOZJRr+ilXva+2KFJuRiQfnjkxJfV/7DYP5C27lSQF++/veCUzVWE5xecZnSBJjf6fSwJA==
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001143"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001143.tgz#560f2cfb9f313d1d7e52eb8dac0e4e36c8821c0d"
integrity sha512-p/PO5YbwmCpBJPxjOiKBvAlUPgF8dExhfEpnsH+ys4N/791WHrYrGg0cyHiAURl5hSbx5vIcjKmQAP6sHDYH3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -3675,9 +3670,9 @@ css-what@2.1:
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
css-what@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39"
integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==
version "3.4.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.1.tgz#81cb70b609e4b1351b1e54cbc90fd9c54af86e2e"
integrity sha512-wHOppVDKl4vTAOWzJt5Ek37Sgd9qq1Bmj/T1OjvicWbU5W7ru7Pqbn0Jdqii3Drx/h+dixHKXNhZYx7blthL7g==
css@^2.0.0:
version "2.2.4"
@ -4134,10 +4129,10 @@ domhandler@^2.3.0:
dependencies:
domelementtype "1"
domhandler@^3.0, domhandler@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
domhandler@^3.0.0, domhandler@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
dependencies:
domelementtype "^2.0.1"
@ -4157,14 +4152,14 @@ domutils@^1.5.1, domutils@^1.7.0:
dom-serializer "0"
domelementtype "1"
domutils@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.3.0.tgz#6469c63a3da2de0c3016f3a59e6a969e10705bce"
integrity sha512-xWC75PM3QF6MjE5e58OzwTX0B/rPQnlqH0YyXB/c056RtVJA+eu60da2I/bdnEHzEYC00g8QaZUlAbqOZVbOsw==
domutils@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b"
integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.0.1"
domhandler "^3.0.0"
domhandler "^3.3.0"
dot-case@^3.0.3:
version "3.0.3"
@ -4224,10 +4219,10 @@ ejs@^2.6.1:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.570:
version "1.3.570"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.570.tgz#3f5141cc39b4e3892a276b4889980dabf1d29c7f"
integrity sha512-Y6OCoVQgFQBP5py6A/06+yWxUZHDlNr/gNDGatjH8AZqXl8X0tE4LfjLJsXGz/JmWJz8a6K7bR1k+QzZ+k//fg==
electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.571:
version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
elliptic@^6.5.3:
version "6.5.3"
@ -4313,37 +4308,37 @@ error-ex@^1.2.0, error-ex@^1.3.1:
is-arrayish "^0.2.1"
es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5:
version "1.17.6"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
version "1.17.7"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-regex "^1.1.0"
object-inspect "^1.7.0"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.0:
version "1.18.0-next.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.0.tgz#b302834927e624d8e5837ed48224291f2c66e6fc"
integrity sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==
es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1:
version "1.18.0-next.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-callable "^1.2.2"
is-negative-zero "^2.0.0"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
@ -5600,14 +5595,14 @@ html-parse-stringify2@2.0.1:
void-elements "^2.0.1"
html-to-react@^1.4.2:
version "1.4.3"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.3.tgz#1430a1cb581ef29533892ec70a2fdc4554b17ffd"
integrity sha512-txe09A3vxW8yEZGJXJ1is5gGDfBEVACmZDSgwDyH5EsfRdOubBwBCg63ZThZP0xBn0UE4FyvMXZXmohusCxDcg==
version "1.4.4"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.4.tgz#dd5edb76ff28ab7fc34faabd91446bece292dc38"
integrity sha512-oE4GYH8c/gvFQwfNHBhg1LpfiPsQRKj0JQmvccvUHqyyF7U1H7UzZ7Z6CyF7okv1QFukyvjH9aAApNa4kYSO9g==
dependencies:
domhandler "^3.0"
htmlparser2 "^4.1.0"
domhandler "^3.3.0"
htmlparser2 "^5.0"
lodash.camelcase "^4.3.0"
ramda "^0.27"
ramda "^0.27.1"
html-webpack-plugin@4.0.0-beta.11:
version "4.0.0-beta.11"
@ -5633,14 +5628,14 @@ htmlparser2@^3.3.0:
inherits "^2.0.1"
readable-stream "^3.1.1"
htmlparser2@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
htmlparser2@^5.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.0.tgz#78454bc782599291d9fefd7b48ef2058dc62eb89"
integrity sha512-/Cvz5RTj9q71kCL9No1u2jhFaAdoMtxpNy0YTwjmQB3iX2TZXfCojTm7tp3rM4NxcwaX1iAzvNgo8OFectXmrQ==
dependencies:
domelementtype "^2.0.1"
domhandler "^3.0.0"
domutils "^2.0.0"
domhandler "^3.3.0"
domutils "^2.4.2"
entities "^2.0.0"
http-deceiver@^1.2.7:
@ -6023,10 +6018,10 @@ is-buffer@^1.0.2, is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-callable@^1.1.4, is-callable@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.1.tgz#4d1e21a4f437509d25ce55f8184350771421c96d"
integrity sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==
is-callable@^1.1.4, is-callable@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
is-ci@^2.0.0:
version "2.0.0"
@ -6215,7 +6210,7 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
is-regex@^1.0.4, is-regex@^1.1.0, is-regex@^1.1.1:
is-regex@^1.0.4, is-regex@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz#c6f98aacc546f6cec5468a07b7b153ab564a57b9"
integrity sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==
@ -7401,11 +7396,16 @@ miller-rabin@^4.0.0:
bn.js "^4.0.0"
brorand "^1.0.1"
mime-db@1.44.0, "mime-db@>= 1.43.0 < 2":
mime-db@1.44.0:
version "1.44.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
"mime-db@>= 1.43.0 < 2":
version "1.45.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea"
integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==
mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24:
version "2.1.27"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
@ -7537,9 +7537,9 @@ mixin-object@^2.0.1:
minimist "^1.2.5"
moment@^2.24.0:
version "2.28.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75"
integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw==
version "2.29.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425"
integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA==
move-concurrently@^1.0.1:
version "1.0.1"
@ -7854,18 +7854,18 @@ object-hash@^2.0.1:
resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.0.3.tgz#d12db044e03cd2ca3d77c0570d87225b02e1e6ea"
integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==
object-inspect@^1.7.0, object-inspect@^1.8.0:
object-inspect@^1.8.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0"
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
object-is@^1.0.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
version "1.1.3"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
es-abstract "^1.18.0-next.1"
object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1"
@ -7884,7 +7884,7 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
object.assign@^4.1.0:
object.assign@^4.1.0, object.assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd"
integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==
@ -7980,9 +7980,9 @@ onetime@^5.1.0:
mimic-fn "^2.1.0"
open@^7.0.2:
version "7.2.1"
resolved "https://registry.yarnpkg.com/open/-/open-7.2.1.tgz#07b0ade11a43f2a8ce718480bdf3d7563a095195"
integrity sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==
version "7.3.0"
resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
@ -8447,9 +8447,9 @@ postcss-browser-comments@^3.0.0:
postcss "^7"
postcss-calc@^7.0.1:
version "7.0.4"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz#5e177ddb417341e6d4a193c5d9fd8ada79094f8b"
integrity sha512-0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==
version "7.0.5"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e"
integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==
dependencies:
postcss "^7.0.27"
postcss-selector-parser "^6.0.2"
@ -8652,9 +8652,9 @@ postcss-lab-function@^2.0.1:
postcss-values-parser "^2.0.0"
postcss-load-config@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw==
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
@ -9028,13 +9028,14 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4:
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss-svgo@^4.0.2:
version "4.0.2"
@ -9084,9 +9085,9 @@ postcss@7.0.21:
supports-color "^6.1.0"
postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.34"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw==
version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies:
chalk "^2.4.2"
source-map "^0.6.1"
@ -9299,7 +9300,7 @@ raf@^3.1.0, raf@^3.4.0, raf@^3.4.1:
dependencies:
performance-now "^2.1.0"
ramda@^0.27:
ramda@^0.27.1:
version "0.27.1"
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
@ -9606,12 +9607,12 @@ react-scripts@3.4.3:
fsevents "2.1.2"
react-svg@^11.0.9:
version "11.0.40"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.40.tgz#0cb93a07e20b747b7b1a118ea14ccbb25ef5c093"
integrity sha512-uNsWS2o65NmUey7MppPVWTFeyYxfe6b82g5+rJcxjJGAfm3SAiA+oSfuDD+fjpJJLMCoWkBJoyCzNuV3FTVLVg==
version "11.0.42"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.42.tgz#742edae2c5b43e2a36f5ea17e953fce4c4f25b24"
integrity sha512-DYRpk4St3oNQBwaFdyYKA7yz2/VUrT07QHuHDTZXVeEfijZlRbzDYj4rSGe3MvEdzOoLUJCcjIYPvki2sUNqfA==
dependencies:
"@babel/runtime" "^7.11.2"
"@tanem/svg-injector" "^8.0.68"
"@tanem/svg-injector" "^8.0.70"
prop-types "^15.7.2"
react-text-mask@^5.4.3:
@ -10515,6 +10516,11 @@ sisteransi@^1.0.4:
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
sjcl@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.8.tgz#f2ec8d7dc1f0f21b069b8914a41a8f236b0e252a"
integrity sha512-LzIjEQ0S0DpIgnxMEayM1rq9aGwGRG4OnZhCdjx7glTaJtf4zRfpg87ImfjSJjoW9vKpagd82McDOwbRT5kQKQ==
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
@ -11546,7 +11552,7 @@ use@^3.1.0:
resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=

View File

@ -1,6 +1,6 @@
{
"name": "asc-web-common",
"version": "1.0.243",
"version": "1.0.246",
"description": "Ascensio System SIA common components and solutions library",
"license": "AGPL-3.0",
"files": [
@ -37,7 +37,8 @@
"react-svg": "^11.0.9",
"react-viewer": "^3.2.1",
"react-window-infinite-loader": "^1.0.5",
"screenfull": "^5.0.2"
"screenfull": "^5.0.2",
"sjcl": "^1.0.8"
},
"devDependencies": {
"@babel/cli": "^7.8.3",

View File

@ -25,13 +25,13 @@ client.interceptors.response.use(
error => {
switch (true) {
case error.response.status === 401:
setAuthorizationToken();
setAuthorizationToken();
window.location.href = "/login";
break;
case error.response.status === 402:
if (!window.location.pathname.includes("payments")) {
window.location.href = "/payments";
}
}
break;
default:
break;

View File

@ -1,159 +1,176 @@
import { request } from "../client";
export function getSettings() {
return request({
method: "get",
url: "/settings.json"
});
}
return request({
method: "get",
url: "/settings.json"
});
}
export function getPortalCultures() {
return request({
method: "get",
url: "/settings/cultures.json"
});
}
export function getPortalPasswordSettings(confirmKey = null) {
const options = {
method: "get",
url: "/settings/security/password"
};
export function getPortalCultures() {
return request({
method: "get",
url: "/settings/cultures.json"
});
}
if(confirmKey)
options.headers = { confirm: confirmKey };
export function getPortalPasswordSettings(confirmKey = null) {
const options = {
method: "get",
url: "/settings/security/password"
};
return request(options);
}
if (confirmKey) options.headers = { confirm: confirmKey };
export function getPortalTimezones(confirmKey = null) {
const options = {
method: "get",
url: "/settings/timezones.json"
};
return request(options);
}
if(confirmKey)
options.headers = { confirm: confirmKey };
export function getPortalTimezones(confirmKey = null) {
const options = {
method: "get",
url: "/settings/timezones.json"
};
return request(options);
}
if (confirmKey) options.headers = { confirm: confirmKey };
export function setLanguageAndTime(lng, timeZoneID) {
return request({
method: "put",
url: "/settings/timeandlanguage.json",
data: { lng, timeZoneID }
});
}
return request(options);
}
export function setGreetingSettings(title) {
return request({
method: "post",
url: `/settings/greetingsettings.json`,
data: { title }
});
}
export function restoreGreetingSettings() {
return request({
method: "post",
url: `/settings/greetingsettings/restore.json`
});
}
export function getLogoText() {
return request({
method: "get",
url: `/settings/whitelabel/logotext.json`
});
}
export function getLogoSizes() {
return request({
method: "get",
url: `/settings/whitelabel/sizes.json`
});
}
export function getLogoUrls() {
return request({
method: "get",
url: `/settings/whitelabel/logos.json`
});
}
export function setLanguageAndTime(lng, timeZoneID) {
return request({
method: "put",
url: "/settings/timeandlanguage.json",
data: { lng, timeZoneID }
});
}
export function getCurrentCustomSchema(id) {
return request({
method: "get",
url: `settings/customschemas/${id}.json`
});
}
export function setGreetingSettings(title) {
return request({
method: "post",
url: `/settings/greetingsettings.json`,
data: { title }
});
}
export function sendRecoverRequest(email, message) {
const data = { email, message };
return request({
method: "post",
url: `/settings/sendadmmail`,
data
});
}
export function restoreGreetingSettings() {
return request({
method: "post",
url: `/settings/greetingsettings/restore.json`
});
}
export function sendRegisterRequest(email) {
const data = { email };
return request({
method: "post",
url: `/settings/sendjoininvite`,
data
});
}
export function getLogoText() {
return request({
method: "get",
url: `/settings/whitelabel/logotext.json`
});
}
export function getLogoSizes() {
return request({
method: "get",
url: `/settings/whitelabel/sizes.json`
});
}
export function getMachineName(confirmKey = null) {
const options = {
method: "get",
url: "/settings/machine.json"
};
export function getLogoUrls() {
return request({
method: "get",
url: `/settings/whitelabel/logos.json`
});
}
if ( confirmKey )
options.headers = { confirm: confirmKey };
export function getCurrentCustomSchema(id) {
return request({
method: "get",
url: `settings/customschemas/${id}.json`
});
}
return request(options);
}
export function sendRecoverRequest(email, message) {
const data = { email, message };
return request({
method: "post",
url: `/settings/sendadmmail`,
data
});
}
export function setPortalOwner( email, pwd, lng, timeZone, confirmKey = null, analytics ) {
const options = {
method: "put",
url: "/settings/wizard/complete.json",
data: {
email: email,
pwd: pwd,
export function sendRegisterRequest(email) {
const data = { email };
return request({
method: "post",
url: `/settings/sendjoininvite`,
data
});
}
export function getMachineName(confirmKey = null) {
const options = {
method: "get",
url: "/settings/machine.json"
};
if (confirmKey) options.headers = { confirm: confirmKey };
return request(options);
}
export function setPortalOwner(
email,
hash,
lng,
timeZone,
confirmKey = null,
analytics
) {
const options = {
method: "put",
url: "/settings/wizard/complete.json",
data: {
email: email,
PasswordHash: hash,
lng: lng,
timeZone: timeZone,
analytics: analytics
}
}
};
if ( confirmKey ) {
options.headers = { confirm: confirmKey};
}
return request(options);
if (confirmKey) {
options.headers = { confirm: confirmKey };
}
return request(options);
}
export function getIsLicenseRequired() {
return request({
method: "get",
url: "/settings/license/required.json"
});
}
export function setLicense(confirmKey = null, data) {
const options = {
method: "post",
url: `/settings/license`,
data
};
if (confirmKey) {
options.headers = { confirm: confirmKey };
}
export function getIsLicenseRequired() {
return request({
method: 'get',
url: '/settings/license/required.json'
})
}
return request(options);
}
export function setLicense(confirmKey = null, data) {
const options = {
method: "post",
url: `/settings/license`,
data
}
if ( confirmKey ) {
options.headers = { confirm: confirmKey }
}
return request(options);
}
export function getPaymentSettings() {
return request({
method: "get",
url: `/settings/payment.json`
});
}
export function acceptLicense() {
return request({
method: "post",
url: `/settings/license/accept.json`
});
}

View File

@ -1,10 +1,9 @@
import { request, setAuthorizationToken } from "../client";
export function login(userName, password) {
export function login(userName, passwordHash) {
const data = {
userName,
password
passwordHash
};
return request({
@ -33,4 +32,4 @@ export function checkConfirmLink(data) {
url: "/authentication/confirm.json",
data
});
}
}

View File

@ -48,8 +48,15 @@ const getCustomModules = isAdmin => {
},
"SettingsIcon"
);
return [separator, settingsModuleWrapper];*/ return [];
const paymentsModuleWrapper = toModuleWrapper(
{
id: "payments",
title: i18n.t("Payments"),
link: "/payments"
},
"PaymentsIcon"
);
return [separator, settingsModuleWrapper, paymentsModuleWrapper];*/ return [];
};
const getAvailableModules = (modules, currentUser) => {
@ -70,10 +77,16 @@ const StudioLayoutContainer = withTranslation()(PureStudioLayout);
class StudioLayout extends React.Component {
constructor(props) {
super(props);
changeLanguage(i18n);
}
componentDidUpdate(prevProps) {
const { language } = this.props;
if (language !== prevProps.language) {
changeLanguage(i18n);
}
}
shouldComponentUpdate(nextProps) {
return !isEqual(this.props, nextProps);
}
@ -92,8 +105,8 @@ StudioLayout.propTypes = {
function mapStateToProps(state) {
const { user, isAuthenticated, isLoaded, modules, settings } = state.auth;
const { defaultPage, currentProductId } = settings;
const { defaultPage, currentProductId, culture } = settings;
const { cultureName } = user;
return {
hasChanges: isAuthenticated && isLoaded,
availableModules: getAvailableModules(modules, user),
@ -101,11 +114,9 @@ function mapStateToProps(state) {
currentModuleId: currentProductId,
settings: settings,
modules: modules,
defaultPage: defaultPage || "/"
defaultPage: defaultPage || "/",
language: cultureName || culture || "en-US"
};
}
export default connect(
mapStateToProps,
{ logout }
)(withRouter(StudioLayout));
export default connect(mapStateToProps, { logout })(withRouter(StudioLayout));

View File

@ -2,5 +2,6 @@
"Profile": "Profile",
"AboutCompanyTitle": "About this program",
"LogoutButton": "Sign Out",
"Settings": "Settings"
}
"Settings": "Settings",
"Payments": "Payments"
}

View File

@ -2,5 +2,6 @@
"Profile": "Профиль",
"AboutCompanyTitle": "О программе",
"LogoutButton": "Выйти",
"Settings": "Настройки"
}
"Settings": "Настройки",
"Payments": "Платежи"
}

View File

@ -19,9 +19,14 @@ import styled from "styled-components";
import { withTranslation } from "react-i18next";
import i18n from "./i18n";
import ForgotPasswordModalDialog from "./sub-components/forgot-password-modal-dialog";
import { login, setIsLoaded } from "../../store/auth/actions";
import {
login,
setIsLoaded,
reloadPortalSettings
} from "../../store/auth/actions";
import { sendInstructionsToChangePassword } from "../../api/people";
import Register from "./sub-components/register-container";
import { createPasswordHash } from "../../utils";
//import history from "../../history";
import { redirectToDefaultPage } from "../../utils";
@ -196,7 +201,7 @@ class Form extends Component {
onSubmit = () => {
const { errorText, identifier, password } = this.state;
const { login, setIsLoaded, homepage } = this.props;
const { login, setIsLoaded, history, hashSettings, homepage } = this.props;
errorText && this.setState({ errorText: "" });
let hasError = false;
@ -218,7 +223,9 @@ class Form extends Component {
if (hasError) return false;
this.setState({ isLoading: true });
login(userName, pass)
const hash = createPasswordHash(pass, hashSettings);
login(userName, hash)
.then(() => {
//debugger;
@ -233,7 +240,7 @@ class Form extends Component {
};
componentDidMount() {
const { match, t, organizationName } = this.props;
const { match, t, hashSettings, reloadPortalSettings, organizationName } = this.props;
const { error, confirmedEmail } = match.params;
document.title = `${t("Authorization")} ${organizationName}`; //TODO: implement the setDocumentTitle() utility in ASC.Web.Common
@ -241,6 +248,10 @@ class Form extends Component {
error && this.setState({ errorText: error });
confirmedEmail && this.setState({ identifier: confirmedEmail });
window.addEventListener("keyup", this.onKeyPress);
if (!hashSettings) {
reloadPortalSettings();
}
}
componentWillUnmount() {
@ -469,18 +480,20 @@ LoginForm.propTypes = {
function mapStateToProps(state) {
const { isLoaded, user, settings } = state.auth;
const { greetingSettings, enabledJoin, organizationName, culture } = settings;
const { greetingSettings, enabledJoin, organizationName, culture, hashSettings } = settings;
return {
isLoaded,
enabledJoin,
organizationName,
language: user.cultureName || culture,
greetingTitle: greetingSettings
greetingTitle: greetingSettings,
hashSettings
};
}
export default connect(
mapStateToProps,
{ login, setIsLoaded }
)(withRouter(LoginForm));
export default connect(mapStateToProps, {
login,
setIsLoaded,
reloadPortalSettings
})(withRouter(LoginForm));

View File

@ -15,7 +15,7 @@ export const SET_CURRENT_PRODUCT_ID = "SET_CURRENT_PRODUCT_ID";
export const SET_CURRENT_PRODUCT_HOME_PAGE = "SET_CURRENT_PRODUCT_HOME_PAGE";
export const SET_GREETING_SETTINGS = "SET_GREETING_SETTINGS";
export const SET_CUSTOM_NAMES = "SET_CUSTOM_NAMES";
export const SET_WIZARD_COMPLETED ="SET_WIZARD_COMPLETED";
export const SET_WIZARD_COMPLETED = "SET_WIZARD_COMPLETED";
export function setCurrentUser(user) {
return {
@ -45,7 +45,6 @@ export function setIsLoaded(isLoaded) {
};
}
export function setLogout() {
return {
type: LOGOUT
@ -118,28 +117,34 @@ export function setCustomNames(customNames) {
export function setWizardComplete() {
return {
type: SET_WIZARD_COMPLETED
}
};
}
export function getUser(dispatch) {
return api.people.getUser()
return api.people
.getUser()
.then(user => dispatch(setCurrentUser(user)))
.catch(err => dispatch(setCurrentUser({})));
}
export function getPortalSettings(dispatch) {
return api.settings
.getSettings()
.then(settings => {
dispatch(setSettings(settings));
settings.nameSchemaId && getCurrentCustomSchema(dispatch, settings.nameSchemaId);
});
return api.settings.getSettings().then(settings => {
const { passwordHash: hashSettings, ...otherSettings } = settings;
dispatch(
setSettings(
hashSettings ? { ...otherSettings, hashSettings } : otherSettings
)
);
otherSettings.nameSchemaId &&
getCurrentCustomSchema(dispatch, otherSettings.nameSchemaId);
});
}
export function getCurrentCustomSchema(dispatch, id) {
return api.settings
return api.settings
.getCurrentCustomSchema(id)
.then(customNames => dispatch(setCustomNames(customNames)));
.then(customNames => dispatch(setCustomNames(customNames)));
}
export function getModules(dispatch) {
@ -156,17 +161,19 @@ export function getUserInfo(dispatch) {
return getUser(dispatch).finally(() => loadInitInfo(dispatch));
}
export function login(user, pass) {
export function login(user, hash) {
return dispatch => {
return api.user.login(user, pass)
.then(() => dispatch(setIsLoaded(false)))
.then(() => getUserInfo(dispatch));
return api.user
.login(user, hash)
.then(() => dispatch(setIsLoaded(false)))
.then(() => getUserInfo(dispatch));
};
}
export function logout() {
return dispatch => {
return api.user.logout()
return api.user
.logout()
.then(() => dispatch(setLogout()))
.then(() => dispatch(setIsLoaded(true)));
};
@ -188,4 +195,8 @@ export function getPortalPasswordSettings(dispatch, confirmKey = null) {
return api.settings.getPortalPasswordSettings(confirmKey).then(settings => {
dispatch(setPasswordSettings(settings));
});
}
}
export const reloadPortalSettings = () => {
return dispatch => getPortalSettings(dispatch);
};

View File

@ -82,7 +82,10 @@ const authReducer = (state = initialState, action) => {
localStorage.setItem(LANGUAGE, action.settings.culture);
}
return Object.assign({}, state, {
settings: { ...state.settings, ...action.settings }
settings: {
...state.settings,
...action.settings
}
});
case SET_PORTAL_CULTURES:
return Object.assign({}, state, {

View File

@ -1,4 +1,5 @@
import { AUTH_KEY, LANGUAGE } from "../constants";
import sjcl from "sjcl";
export const toUrlParams = (obj, skipNull) => {
let str = "";
@ -31,8 +32,7 @@ export function getObjectByLocation(location) {
return object;
}
export function changeLanguage(i18n) {
const currentLng = localStorage.getItem(LANGUAGE);
export function changeLanguage(i18n, currentLng = localStorage.getItem(LANGUAGE)) {
return currentLng
? i18n.language !== currentLng
? i18n.changeLanguage(currentLng)
@ -50,4 +50,28 @@ export function redirectToDefaultPage() {
}
return false;
}
}
export function createPasswordHash(password, hashSettings) {
if (
!password ||
!hashSettings ||
typeof password !== "string" ||
typeof hashSettings !== "object" ||
!hashSettings.hasOwnProperty("salt") ||
!hashSettings.hasOwnProperty("size") ||
!hashSettings.hasOwnProperty("iterations") ||
typeof hashSettings.size !== "number" ||
typeof hashSettings.iterations !== "number" ||
typeof hashSettings.salt !== "string"
)
throw new Error("Invalid params.");
const { size, iterations, salt } = hashSettings;
let bits = sjcl.misc.pbkdf2(password, salt, iterations);
bits = bits.slice(0, size / 32);
const hash = sjcl.codec.hex.fromBits(bits);
return hash;
}

View File

@ -1508,10 +1508,10 @@
"@types/yargs" "^15.0.0"
chalk "^3.0.0"
"@jest/types@^26.3.0":
version "26.3.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.3.0.tgz#97627bf4bdb72c55346eef98e3b3f7ddc4941f71"
integrity sha512-BDPG23U0qDeAvU4f99haztXwdAg3hz4El95LkAM+tHAqqhiVzRpEGHHU8EDxT/AnxOrA65YjLBwDahdJ9pTLJQ==
"@jest/types@^26.5.0":
version "26.5.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.5.0.tgz#163f6e00c5ac9bb6fc91c3802eaa9d0dd6e1474a"
integrity sha512-nH9DFLqaIhB+RVgjivemvMiFSWw/BKwbZGxBAMv8CCTvUyFoK8RwHhAlmlXIvMBrf5Z3YQ4p9cq3Qh9EDctGvA==
dependencies:
"@types/istanbul-lib-coverage" "^2.0.0"
"@types/istanbul-reports" "^3.0.0"
@ -1611,9 +1611,9 @@
uuid "^3.3.2"
"@storybook/addon-console@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@storybook/addon-console/-/addon-console-1.2.1.tgz#f338401661b4636118b13839848061e996d4e104"
integrity sha512-2iDbDTipWonvRpIqLLntfhCGvawFFvoG1xyErpyL7K/HRdQ1zzIvR1Qm83S7TK8Vg+RzZWm4wcDbxx7WOsFCNg==
version "1.2.2"
resolved "https://registry.yarnpkg.com/@storybook/addon-console/-/addon-console-1.2.2.tgz#018cd712e1ed6eee1a7eae57c3d96f1fbbedc191"
integrity sha512-aTuYoz1Fit9PAhy0VDTjQ5rovRz5a+DgPRIaA5cktkiA9Y0ikK/cu525DDZLTh7oNMOt0fmRYyYPtknTMyeXrQ==
dependencies:
global "^4.3.2"
@ -2257,17 +2257,17 @@
"@svgr/plugin-svgo" "^5.4.0"
loader-utils "^2.0.0"
"@tanem/svg-injector@^8.0.68":
version "8.0.69"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.69.tgz#ef41afc98c3c706ef16f7468991f558a82e567c9"
integrity sha512-/F4v9aXqvoa0bg+m0m/eRHnYkPxkkAfakLcB/hRIHQ9Fqwuxz1JBDxQ0xcgNkEJI4dN9uCCvAIUIoUoQieAp6g==
"@tanem/svg-injector@^8.0.70":
version "8.0.71"
resolved "https://registry.yarnpkg.com/@tanem/svg-injector/-/svg-injector-8.0.71.tgz#810e1b0de741c774d68722499a4a48fb61dfa9e9"
integrity sha512-JOlNQDnhWjWyR9g2P3cYA+CPiBstxS0rLoSFOFtHxavpwwPiQf2JtyqAqMVxgR8XV1USadLrTFUtk4fEq3Pxow==
dependencies:
"@babel/runtime" "^7.11.2"
"@testing-library/dom@*":
version "7.24.2"
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.24.2.tgz#6d2b7dd21efbd5358b98c2777fc47c252f3ae55e"
integrity sha512-ERxcZSoHx0EcN4HfshySEWmEf5Kkmgi+J7O79yCJ3xggzVlBJ2w/QjJUC+EBkJJ2OeSw48i3IoePN4w8JlVUIA==
version "7.24.3"
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.24.3.tgz#dae3071463cf28dc7755b43d9cf2202e34cbb85d"
integrity sha512-6eW9fUhEbR423FZvoHRwbWm9RUUByLWGayYFNVvqTnQLYvsNpBS4uEuKH9aqr3trhxFwGVneJUonehL3B1sHJw==
dependencies:
"@babel/code-frame" "^7.10.4"
"@babel/runtime" "^7.10.3"
@ -2310,9 +2310,9 @@
integrity sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==
"@types/babel__core@^7.1.0":
version "7.1.9"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d"
integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==
version "7.1.10"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.10.tgz#ca58fc195dd9734e77e57c6f2df565623636ab40"
integrity sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@ -2321,31 +2321,33 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
version "7.6.1"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
version "7.6.2"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.0.2"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
version "7.0.3"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.3.tgz#b8aaeba0a45caca7b56a5de9459872dde3727214"
integrity sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.14.tgz#e99da8c075d4fb098c774ba65dabf7dc9954bd13"
integrity sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==
version "7.0.15"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
dependencies:
"@babel/types" "^7.3.0"
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/cheerio@^0.22.22":
version "0.22.22"
resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.22.tgz#ae71cf4ca59b8bbaf34c99af7a5d6c8894988f5f"
integrity sha512-05DYX4zU96IBfZFY+t3Mh88nlwSMtmmzSYaQkKN48T495VV1dkHSah6qYyDTN5ngaS0i0VonH37m+RuzSM0YiA==
dependencies:
"@types/node" "*"
"@types/estree@*":
version "0.0.45"
@ -2373,9 +2375,9 @@
integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==
"@types/html-minifier-terser@^5.0.0":
version "5.1.0"
resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880"
integrity sha512-iYCgjm1dGPRuo12+BStjd1HiVQqhlRhWDOQigNxn023HcjnhsiFz9pc6CzJj4HwDCSQca9bxTL4PxJDbkdm3PA==
version "5.1.1"
resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50"
integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA==
"@types/is-function@^1.0.0":
version "1.0.0"
@ -2427,9 +2429,9 @@
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*":
version "14.11.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
version "14.11.2"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.2.tgz#2de1ed6670439387da1c9f549a2ade2b0a799256"
integrity sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==
"@types/normalize-package-data@^2.4.0":
version "2.4.0"
@ -2457,9 +2459,9 @@
integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==
"@types/reach__router@^1.2.3":
version "1.3.5"
resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.5.tgz#14e1e981cccd3a5e50dc9e969a72de0b9d472f6d"
integrity sha512-h0NbqXN/tJuBY/xggZSej1SKQEstbHO7J/omt1tYoFGmj3YXOodZKbbqD4mNDh7zvEGYd7YFrac1LTtAr3xsYQ==
version "1.3.6"
resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.6.tgz#413417ce74caab331c70ce6a03a4c825188e4709"
integrity sha512-RHYataCUPQnt+GHoASyRLq6wmZ0n8jWlBW8Lxcwd30NN6vQfbmTeoSDfkgxO0S1lEzArp8OFDsq5KIs7FygjtA==
dependencies:
"@types/history" "*"
"@types/react" "*"
@ -2494,9 +2496,9 @@
"@types/react" "*"
"@types/react@*":
version "16.9.49"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.49.tgz#09db021cf8089aba0cdb12a49f8021a69cce4872"
integrity sha512-DtLFjSj0OYAdVLBbyjhuV9CdGVHCkHn2R+xr3XkBvK2rS1Y1tkc14XSGjYgm5Fjjr90AxH9tiSzc1pCFMGO06g==
version "16.9.50"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.50.tgz#cb5f2c22d42de33ca1f5efc6a0959feb784a3a2d"
integrity sha512-kPx5YsNnKDJejTk1P+lqThwxN2PczrocwsvqXnjvVvKpFescoY62ZiM3TV7dH1T8lFhlHZF+PE5xUyimUwqEGA==
dependencies:
"@types/prop-types" "*"
csstype "^3.0.2"
@ -2554,9 +2556,9 @@
pretty-format "^25.1.0"
"@types/uglify-js@*":
version "3.9.3"
resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz#d94ed608e295bc5424c9600e6b8565407b6b4b6b"
integrity sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==
version "3.11.0"
resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.11.0.tgz#2868d405cc45cd9dc3069179052103032c33afbc"
integrity sha512-I0Yd8TUELTbgRHq2K65j8rnDPAzAP+DiaF/syLem7yXwYLsHZhPd+AM2iXsWmf9P2F2NlFCgl5erZPQx9IbM9Q==
dependencies:
source-map "^0.6.1"
@ -2566,9 +2568,9 @@
integrity sha512-5oiXqR7kwDGZ6+gmzIO2lTC+QsriNuQXZDWNYRV3l2XRN/zmPgnC21DLSx2D05zvD8vnXW6qUg7JnXZ4I6qLVQ==
"@types/webpack-sources@*":
version "1.4.2"
resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.2.tgz#5d3d4dea04008a779a90135ff96fb5c0c9e6292c"
integrity sha512-77T++JyKow4BQB/m9O96n9d/UUHWLQHlcqXb9Vsf4F1+wKNrrlWNFPDLKNT92RJnCSL6CieTc+NDXtCVZswdTw==
version "2.0.0"
resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.0.0.tgz#08216ab9be2be2e1499beaebc4d469cec81e82a7"
integrity sha512-a5kPx98CNFRKQ+wqawroFunvFqv7GHm/3KOI52NY9xWADgc8smu4R6prt4EU/M4QfVjvgBkMqU4fBhw3QfMVkg==
dependencies:
"@types/node" "*"
"@types/source-list-map" "*"
@ -2592,16 +2594,16 @@
integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
version "13.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.10.tgz#e77bf3fc73c781d48c2eb541f87c453e321e5f4b"
integrity sha512-MU10TSgzNABgdzKvQVW1nuuT+sgBMWeXNc3XOs5YXV5SDAK+PPja2eUuBNB9iqElu03xyEDqlnGw0jgl4nbqGQ==
version "13.0.11"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.11.tgz#def2f0c93e4bdf2c61d7e34899b17e34be28d3b1"
integrity sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==
dependencies:
"@types/yargs-parser" "*"
"@types/yargs@^15.0.0":
version "15.0.5"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz#947e9a6561483bdee9adffc983e91a6902af8b79"
integrity sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==
version "15.0.7"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.7.tgz#dad50a7a234a35ef9460737a56024287a3de1d2b"
integrity sha512-Gf4u3EjaPNcC9cTu4/j2oN14nSVhr8PQ+BvBcBQHAhDZfl0bVIiLgvnRXv/dn58XhTm9UXvBpvJpDlwV65QxOA==
dependencies:
"@types/yargs-parser" "*"
@ -2797,14 +2799,14 @@ acorn@^5.5.3:
integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
acorn@^6.0.1, acorn@^6.4.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
version "6.4.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
acorn@^7.1.0, acorn@^7.1.1:
version "7.4.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c"
integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==
version "7.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
add-dom-event-listener@^1.1.0:
version "1.1.0"
@ -2956,11 +2958,10 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
color-convert "^1.9.0"
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
"@types/color-name" "^1.1.1"
color-convert "^2.0.1"
ansi-to-html@^0.6.11:
@ -3121,7 +3122,7 @@ arrify@^1.0.1:
integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
"asc-web-components@file:../../packages/asc-web-components":
version "1.0.449"
version "1.0.457"
dependencies:
email-addresses "^3.1.0"
html-to-react "^1.4.2"
@ -3489,9 +3490,9 @@ babel-plugin-named-asset-import@^0.3.1:
integrity sha512-1aGDUfL1qOOIoqk9QKGIo2lANk+C7ko/fqH0uIyC71x3PEGz0uVP8ISgfEsFuG+FKmjHTvFK/nNM8dowpmUxLA==
babel-plugin-react-docgen@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.1.0.tgz#1dfa447dac9ca32d625a123df5733a9e47287c26"
integrity sha512-vzpnBlfGv8XOhJM2zbPyyqw2OLEbelgZZsaaRRTpVwNKuYuc+pUg4+dy7i9gCRms0uOQn4osX571HRcCJMJCmA==
version "4.2.0"
resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.2.0.tgz#4f425692f0ca06c73a1462274d370a3ac0637b46"
integrity sha512-B3tjZwKskcia9TsqkND+9OTjl/F5A5OBvRJ6Ktg34CONoxm+kB3CJ52wk5TjbszX9gqCPcAuc0GgkhT0CLuT/Q==
dependencies:
lodash "^4.17.15"
react-docgen "^5.0.0"
@ -3880,12 +3881,12 @@ browserslist@4.7.0:
node-releases "^1.1.29"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.8.5, browserslist@^4.9.1:
version "4.14.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.3.tgz#381f9e7f13794b2eb17e1761b4f118e8ae665a53"
integrity sha512-GcZPC5+YqyPO4SFnz48/B0YaCwS47Q9iPChRGi6t7HhflKBcINzFrJvRfC+jp30sRMKxF+d4EHGs27Z0XP1NaQ==
version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies:
caniuse-lite "^1.0.30001131"
electron-to-chromium "^1.3.570"
caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.571"
escalade "^3.1.0"
node-releases "^1.1.61"
@ -4065,10 +4066,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001131:
version "1.0.30001132"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001132.tgz#309279274f10d3aa736aa91fa269fcc8d0cd7ef9"
integrity sha512-zk5FXbnsmHa0Ktc/NOZJRr+ilXva+2KFJuRiQfnjkxJfV/7DYP5C27lSQF++/veCUzVWE5xecZnSBJjf6fSwJA==
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001143"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001143.tgz#560f2cfb9f313d1d7e52eb8dac0e4e36c8821c0d"
integrity sha512-p/PO5YbwmCpBJPxjOiKBvAlUPgF8dExhfEpnsH+ys4N/791WHrYrGg0cyHiAURl5hSbx5vIcjKmQAP6sHDYH3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -4820,9 +4821,9 @@ css-what@2.1:
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
css-what@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39"
integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==
version "3.4.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.1.tgz#81cb70b609e4b1351b1e54cbc90fd9c54af86e2e"
integrity sha512-wHOppVDKl4vTAOWzJt5Ek37Sgd9qq1Bmj/T1OjvicWbU5W7ru7Pqbn0Jdqii3Drx/h+dixHKXNhZYx7blthL7g==
cssesc@^3.0.0:
version "3.0.0"
@ -5174,9 +5175,9 @@ dom-accessibility-api@^0.3.0:
integrity sha512-PzwHEmsRP3IGY4gv/Ug+rMeaTIyTJvadCb+ujYXYeIylbHJezIyNToe8KfEgHTCEYyC+/bUghYOGg8yMGlZ6vA==
dom-accessibility-api@^0.5.1:
version "0.5.2"
resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.2.tgz#ef3cdb5d3f0d599d8f9c8b18df2fb63c9793739d"
integrity sha512-k7hRNKAiPJXD2aBqfahSo4/01cTsKWXf+LqJgglnkN2Nz8TsxXKQBXHhKe0Ye9fEfHEZY49uSA5Sr3AqP/sWKA==
version "0.5.3"
resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.3.tgz#0ea493c924d4070dfbf531c4aaca3d7a2c601aab"
integrity sha512-yfqzAi1GFxK6EoJIZKgxqJyK6j/OjEFEUi2qkNThD/kUhoCFSG1izq31B5xuxzbJBGw9/67uPtkPMYAzWL7L7Q==
dom-converter@^0.2:
version "0.2.0"
@ -5261,10 +5262,10 @@ domhandler@^2.3.0:
dependencies:
domelementtype "1"
domhandler@^3.0, domhandler@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
domhandler@^3.0.0, domhandler@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
dependencies:
domelementtype "^2.0.1"
@ -5284,14 +5285,14 @@ domutils@^1.5.1, domutils@^1.7.0:
dom-serializer "0"
domelementtype "1"
domutils@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.3.0.tgz#6469c63a3da2de0c3016f3a59e6a969e10705bce"
integrity sha512-xWC75PM3QF6MjE5e58OzwTX0B/rPQnlqH0YyXB/c056RtVJA+eu60da2I/bdnEHzEYC00g8QaZUlAbqOZVbOsw==
domutils@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b"
integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.0.1"
domhandler "^3.0.0"
domhandler "^3.3.0"
dot-case@^3.0.3:
version "3.0.3"
@ -5370,10 +5371,10 @@ ejs@^2.7.4:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.570:
version "1.3.570"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.570.tgz#3f5141cc39b4e3892a276b4889980dabf1d29c7f"
integrity sha512-Y6OCoVQgFQBP5py6A/06+yWxUZHDlNr/gNDGatjH8AZqXl8X0tE4LfjLJsXGz/JmWJz8a6K7bR1k+QzZ+k//fg==
electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.571:
version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
element-resize-detector@^1.2.1:
version "1.2.1"
@ -5461,9 +5462,9 @@ entities@^2.0.0:
integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==
enzyme-adapter-react-16@^1.15.2:
version "1.15.4"
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.4.tgz#328a782365a363ecb424f99283c4833dd92c0f21"
integrity sha512-wPzxs+JaGDK2TPYzl5a9YWGce6i2SQ3Cg51ScLeyj2WotUZ8Obcq1ke/U1Y2VGpYlb9rrX2yCjzSMgtKCeAt5w==
version "1.15.5"
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.5.tgz#7a6f0093d3edd2f7025b36e7fbf290695473ee04"
integrity sha512-33yUJGT1nHFQlbVI5qdo5Pfqvu/h4qPwi1o0a6ZZsjpiqq92a3HjynDhwd1IeED+Su60HDWV8mxJqkTnLYdGkw==
dependencies:
enzyme-adapter-utils "^1.13.1"
enzyme-shallow-equal "^1.0.4"
@ -5504,10 +5505,11 @@ enzyme-shallow-equal@^1.0.1, enzyme-shallow-equal@^1.0.4:
object-is "^1.1.2"
enzyme-to-json@^3.3.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.5.0.tgz#3d536f1e8fb50d972360014fe2bd64e6a672f7dd"
integrity sha512-clusXRsiaQhG7+wtyc4t7MU8N3zCOgf4eY9+CeSenYzKlFST4lxerfOvnWd4SNaToKhkuba+w6m242YpQOS7eA==
version "3.6.1"
resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.6.1.tgz#d60740950bc7ca6384dfe6fe405494ec5df996bc"
integrity sha512-15tXuONeq5ORoZjV/bUo2gbtZrN2IH+Z6DvL35QmZyKHgbY1ahn6wcnLd9Xv9OjiwbAXiiP8MRZwbZrCv1wYNg==
dependencies:
"@types/cheerio" "^0.22.22"
lodash "^4.17.15"
react-is "^16.12.0"
@ -5554,37 +5556,37 @@ error-ex@^1.3.1:
is-arrayish "^0.2.1"
es-abstract@^1.17.0, es-abstract@^1.17.0-next.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.17.5:
version "1.17.6"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
version "1.17.7"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-regex "^1.1.0"
object-inspect "^1.7.0"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.0:
version "1.18.0-next.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.0.tgz#b302834927e624d8e5837ed48224291f2c66e6fc"
integrity sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==
es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1:
version "1.18.0-next.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-callable "^1.2.2"
is-negative-zero "^2.0.0"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
@ -5661,9 +5663,9 @@ escodegen@^1.9.1:
source-map "~0.6.1"
eslint-plugin-react@^7.17.0:
version "7.20.6"
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.6.tgz#4d7845311a93c463493ccfa0a19c9c5d0fd69f60"
integrity sha512-kidMTE5HAEBSLu23CUDvj8dc3LdBU0ri1scwHBZjI41oDv4tjsWZKU7MQccFzH1QYPYhsnTF2ovh7JlcIcmxgg==
version "7.21.3"
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.3.tgz#71655d2af5155b19285ec929dd2cdc67a4470b52"
integrity sha512-OI4GwTCqyIb4ipaOEGLWdaOHCXZZydStAsBEPB2e1ZfNM37bojpgO1BoOQbFb0eLVz3QLDx7b+6kYcrxCuJfhw==
dependencies:
array-includes "^3.1.1"
array.prototype.flatmap "^1.2.3"
@ -6832,19 +6834,19 @@ html-parse-stringify2@2.0.1:
void-elements "^2.0.1"
html-to-react@^1.4.2:
version "1.4.3"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.3.tgz#1430a1cb581ef29533892ec70a2fdc4554b17ffd"
integrity sha512-txe09A3vxW8yEZGJXJ1is5gGDfBEVACmZDSgwDyH5EsfRdOubBwBCg63ZThZP0xBn0UE4FyvMXZXmohusCxDcg==
version "1.4.4"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.4.tgz#dd5edb76ff28ab7fc34faabd91446bece292dc38"
integrity sha512-oE4GYH8c/gvFQwfNHBhg1LpfiPsQRKj0JQmvccvUHqyyF7U1H7UzZ7Z6CyF7okv1QFukyvjH9aAApNa4kYSO9g==
dependencies:
domhandler "^3.0"
htmlparser2 "^4.1.0"
domhandler "^3.3.0"
htmlparser2 "^5.0"
lodash.camelcase "^4.3.0"
ramda "^0.27"
ramda "^0.27.1"
html-webpack-plugin@^4.0.0-beta.2:
version "4.4.1"
resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.4.1.tgz#61ab85aa1a84ba181443345ebaead51abbb84149"
integrity sha512-nEtdEIsIGXdXGG7MjTTZlmhqhpHU9pJFc1OYxcP36c5/ZKP6b0BJMww2QTvJGQYA9aMxUnjDujpZdYcVOXiBCQ==
version "4.5.0"
resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz#625097650886b97ea5dae331c320e3238f6c121c"
integrity sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw==
dependencies:
"@types/html-minifier-terser" "^5.0.0"
"@types/tapable" "^1.0.5"
@ -6868,14 +6870,14 @@ htmlparser2@^3.3.0, htmlparser2@^3.9.1:
inherits "^2.0.1"
readable-stream "^3.1.1"
htmlparser2@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
htmlparser2@^5.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.0.tgz#78454bc782599291d9fefd7b48ef2058dc62eb89"
integrity sha512-/Cvz5RTj9q71kCL9No1u2jhFaAdoMtxpNy0YTwjmQB3iX2TZXfCojTm7tp3rM4NxcwaX1iAzvNgo8OFectXmrQ==
dependencies:
domelementtype "^2.0.1"
domhandler "^3.0.0"
domutils "^2.0.0"
domhandler "^3.3.0"
domutils "^2.4.2"
entities "^2.0.0"
http-errors@1.7.2:
@ -7220,10 +7222,10 @@ is-buffer@^1.0.2, is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.1.tgz#4d1e21a4f437509d25ce55f8184350771421c96d"
integrity sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==
is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
is-ci@^2.0.0:
version "2.0.0"
@ -8019,12 +8021,12 @@ jest@^24.9.0:
import-local "^2.0.0"
jest-cli "^24.9.0"
js-cleanup@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/js-cleanup/-/js-cleanup-1.0.1.tgz#1d38080c7ee92e1d2d2b94054d0a33c48951e0df"
integrity sha512-wyHeWKqbcQV78/tiMJ6pgJrkG7p2u3b2xX9IJFvvurpJL9/++89dHfkUebhWvSMS84LG0uQ7BnG5GGyAzY21Ag==
js-cleanup@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/js-cleanup/-/js-cleanup-1.2.0.tgz#8dbc65954b1d38b255f1e8cf02cd17b3f7a053f9"
integrity sha512-JeDD0yiiSt80fXzAVa/crrS0JDPQljyBG/RpOtaSbyDq03VHa9szJWMaWOYU/bcTn412uMN2MxApXq8v79cUiQ==
dependencies:
magic-string "^0.25.1"
magic-string "^0.25.7"
perf-regexes "^1.0.1"
skip-regex "^1.0.2"
@ -8500,7 +8502,7 @@ lru-cache@^5.1.1:
dependencies:
yallist "^3.0.2"
magic-string@^0.25.1, magic-string@^0.25.2:
magic-string@^0.25.2, magic-string@^0.25.7:
version "0.25.7"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
@ -8547,9 +8549,9 @@ map-visit@^1.0.0:
object-visit "^1.0.0"
markdown-loader@^5.0.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-5.1.0.tgz#4efd5006b1514ca966141c661a47e542a9836e6e"
integrity sha512-xtQNozLEL+55ZSPTNwro8epZqf1h7HjAZd/69zNe8lbckDiGVHeLQm849bXzocln2pwRK2A/GrW/7MAmwjcFog==
version "5.2.0"
resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-5.2.0.tgz#814535790e76b7d861fcf37a16ab03945a64bbc7"
integrity sha512-+vAtBlMdmMY3ERSOUIIek/DwCv939nHvoYISUwwTC7q+caVlQmf7KhhMozbfAcgL/7njGjWxhMgI7nLaz9+KRQ==
dependencies:
loader-utils "^1.2.3"
marked "^0.7.0"
@ -8846,9 +8848,9 @@ mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1:
minimist "^1.2.5"
moment@^2.24.0:
version "2.28.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75"
integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw==
version "2.29.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425"
integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA==
moo@^0.5.0:
version "0.5.1"
@ -8920,9 +8922,9 @@ natural-compare@^1.4.0:
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
nearley@^2.7.10:
version "2.19.6"
resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.6.tgz#22663fd7326eb708b4c18bfdd7e4ce204b7239b0"
integrity sha512-OV3Lx+o5iIGWVY38zs+7aiSnBqaHTFAOQiz83VHJje/wOOaSgzE3H0S/xfISxJhFSoPcX611OEDV9sCT8F283g==
version "2.19.7"
resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.7.tgz#eafbe3e2d8ccfe70adaa5c026ab1f9709c116218"
integrity sha512-Y+KNwhBPcSJKeyQCFjn8B/MIe+DDlhaaDgjVldhy5xtFewIbiQgcbZV8k2gCVwkI1ZsKCnjIYZbR+0Fim5QYgg==
dependencies:
commander "^2.19.0"
moo "^0.5.0"
@ -9140,12 +9142,12 @@ object-inspect@^1.7.0, object-inspect@^1.8.0:
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
object-is@^1.0.1, object-is@^1.0.2, object-is@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
version "1.1.3"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
es-abstract "^1.18.0-next.1"
object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1"
@ -9159,7 +9161,7 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
object.assign@^4.1.0:
object.assign@^4.1.0, object.assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd"
integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==
@ -9249,9 +9251,9 @@ open@^6.3.0:
is-wsl "^1.1.0"
open@^7.0.0:
version "7.2.1"
resolved "https://registry.yarnpkg.com/open/-/open-7.2.1.tgz#07b0ade11a43f2a8ce718480bdf3d7563a095195"
integrity sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==
version "7.3.0"
resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
@ -9622,9 +9624,9 @@ pnp-webpack-plugin@1.5.0:
ts-pnp "^1.1.2"
polished@^3.3.1:
version "3.6.6"
resolved "https://registry.yarnpkg.com/polished/-/polished-3.6.6.tgz#91ef9eface9be5366c07672b63b736f50c151185"
integrity sha512-yiB2ims2DZPem0kCD6V0wnhcVGFEhNh0Iw0axNpKU+oSAgFt6yx6HxIT23Qg0WWvgS379cS35zT4AOyZZRzpQQ==
version "3.6.7"
resolved "https://registry.yarnpkg.com/polished/-/polished-3.6.7.tgz#44cbd0047f3187d83db0c479ef0c7d5583af5fb6"
integrity sha512-b4OViUOihwV0icb9PHmWbR+vPqaSzSAEbgLskvb7ANPATVXGiYv/TQFHQo65S53WU9i5EQ1I03YDOJW7K0bmYg==
dependencies:
"@babel/runtime" "^7.9.2"
@ -9639,9 +9641,9 @@ posix-character-classes@^0.1.0:
integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
postcss-calc@^7.0.1:
version "7.0.4"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz#5e177ddb417341e6d4a193c5d9fd8ada79094f8b"
integrity sha512-0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==
version "7.0.5"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e"
integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==
dependencies:
postcss "^7.0.27"
postcss-selector-parser "^6.0.2"
@ -9702,9 +9704,9 @@ postcss-flexbugs-fixes@^4.1.0:
postcss "^7.0.26"
postcss-load-config@^2.0.0, postcss-load-config@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw==
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
@ -9976,13 +9978,14 @@ postcss-selector-parser@^3.0.0:
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss-svgo@^4.0.2:
version "4.0.2"
@ -10032,9 +10035,9 @@ postcss@^6.0.1:
supports-color "^5.4.0"
postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.34"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw==
version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies:
chalk "^2.4.2"
source-map "^0.6.1"
@ -10089,11 +10092,11 @@ pretty-format@^25.1.0:
react-is "^16.12.0"
pretty-format@^26.4.2:
version "26.4.2"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.4.2.tgz#d081d032b398e801e2012af2df1214ef75a81237"
integrity sha512-zK6Gd8zDsEiVydOCGLkoBoZuqv8VTiHyAbKznXe/gaph/DAeZOmit9yMfgIz5adIgAMMs5XfoYSwAX3jcCO1tA==
version "26.5.0"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.5.0.tgz#3320e4952f8e6918fc8c26c6df7aad9734818ac2"
integrity sha512-NcgRuuTutUJ9+Br4P19DFThpJYnYBiugfRmZEA6pXrUeG+IcMSmppb88rU+iPA+XAJcjTYlCb5Ed6miHg/Qqqw==
dependencies:
"@jest/types" "^26.3.0"
"@jest/types" "^26.5.0"
ansi-regex "^5.0.0"
ansi-styles "^4.0.0"
react-is "^16.12.0"
@ -10340,7 +10343,7 @@ ramda@^0.21.0:
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=
ramda@^0.27:
ramda@^0.27.1:
version "0.27.1"
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
@ -10748,12 +10751,12 @@ react-sizeme@^2.5.2, react-sizeme@^2.6.7:
throttle-debounce "^2.1.0"
react-svg@^11.0.9:
version "11.0.40"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.40.tgz#0cb93a07e20b747b7b1a118ea14ccbb25ef5c093"
integrity sha512-uNsWS2o65NmUey7MppPVWTFeyYxfe6b82g5+rJcxjJGAfm3SAiA+oSfuDD+fjpJJLMCoWkBJoyCzNuV3FTVLVg==
version "11.0.42"
resolved "https://registry.yarnpkg.com/react-svg/-/react-svg-11.0.42.tgz#742edae2c5b43e2a36f5ea17e953fce4c4f25b24"
integrity sha512-DYRpk4St3oNQBwaFdyYKA7yz2/VUrT07QHuHDTZXVeEfijZlRbzDYj4rSGe3MvEdzOoLUJCcjIYPvki2sUNqfA==
dependencies:
"@babel/runtime" "^7.11.2"
"@tanem/svg-injector" "^8.0.68"
"@tanem/svg-injector" "^8.0.70"
prop-types "^15.7.2"
react-syntax-highlighter@^11.0.2:
@ -11276,12 +11279,12 @@ rollup-plugin-babel@^4.3.3:
rollup-pluginutils "^2.8.1"
rollup-plugin-cleanup@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/rollup-plugin-cleanup/-/rollup-plugin-cleanup-3.1.1.tgz#d012faab5e212b1c4bfa8144ace70fc6ac7b3315"
integrity sha512-wMS9JQm4ShvlMqno1pOfqvh0yYgNLO2ZgmzDsVvKuDt4XCn+9DcMoUwRQ5t9p9b113dR5FhPFFUHnvvQ/yuEtA==
version "3.2.1"
resolved "https://registry.yarnpkg.com/rollup-plugin-cleanup/-/rollup-plugin-cleanup-3.2.1.tgz#8cbc92ecf58babd7c210051929797f137bbf777c"
integrity sha512-zuv8EhoO3TpnrU8MX8W7YxSbO4gmOR0ny06Lm3nkFfq0IVKdBUtHwhVzY1OAJyNCIAdLiyPnOrU0KnO0Fri1GQ==
dependencies:
js-cleanup "^1.0.1"
rollup-pluginutils "^2.3.3"
js-cleanup "^1.2.0"
rollup-pluginutils "^2.8.2"
rollup-plugin-commonjs@^10.1.0:
version "10.1.0"
@ -11372,7 +11375,7 @@ rollup-plugin-url@^3.0.1:
mime "^2.4.4"
rollup-pluginutils "^2.8.2"
rollup-pluginutils@^2.3.3, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1, rollup-pluginutils@^2.8.2:
rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1, rollup-pluginutils@^2.8.2:
version "2.8.2"
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==
@ -11721,6 +11724,11 @@ sisteransi@^1.0.4:
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
sjcl@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/sjcl/-/sjcl-1.0.8.tgz#f2ec8d7dc1f0f21b069b8914a41a8f236b0e252a"
integrity sha512-LzIjEQ0S0DpIgnxMEayM1rq9aGwGRG4OnZhCdjx7glTaJtf4zRfpg87ImfjSJjoW9vKpagd82McDOwbRT5kQKQ==
skip-regex@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/skip-regex/-/skip-regex-1.0.2.tgz#ac655d77e7c771ac2b9f37585fea37bff56ad65b"
@ -12191,12 +12199,12 @@ style-inject@^0.3.0:
integrity sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw==
style-loader@^1.0.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.2.1.tgz#c5cbbfbf1170d076cfdd86e0109c5bba114baa1a"
integrity sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==
version "1.3.0"
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e"
integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==
dependencies:
loader-utils "^2.0.0"
schema-utils "^2.6.6"
schema-utils "^2.7.0"
styled-components@^5.0.0:
version "5.2.0"
@ -12459,9 +12467,9 @@ tiny-warning@^1.0.0, tiny-warning@^1.0.2:
integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
tinycolor2@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8"
integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=
version "1.4.2"
resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803"
integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==
tmp@^0.0.33:
version "0.0.33"
@ -12562,9 +12570,9 @@ tr46@^1.0.1:
punycode "^2.1.0"
ts-dedent@^1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.1.1.tgz#68fad040d7dbd53a90f545b450702340e17d18f3"
integrity sha512-UGTRZu1evMw4uTPyYF66/KFd22XiU+jMaIuHrkIHQ2GivAXVlLV0v/vHrpOuTRf9BmpNHi/SO7Vd0rLu0y57jg==
version "1.2.0"
resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.2.0.tgz#6aa2229d837159bb6d635b6b233002423b91e0b0"
integrity sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==
ts-pnp@^1.1.2:
version "1.2.0"
@ -12652,9 +12660,9 @@ uglify-js@3.4.x:
source-map "~0.6.1"
unfetch@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.1.0.tgz#6ec2dd0de887e58a4dee83a050ded80ffc4137db"
integrity sha512-crP/n3eAPUJxZXM9T80/yv0YhkTEx2K1D3h7D1AJM6fzsWZrxdyRuLN0JH/dkZh1LNH8LxCnBzoPFCPbb2iGpg==
version "4.2.0"
resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be"
integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==
unicode-canonical-property-names-ecmascript@^1.0.4:
version "1.0.4"

View File

@ -1,40 +1,51 @@
import React from 'react';
import styled, { css } from 'styled-components';
import PropTypes from 'prop-types';
import Loader from '../loader';
import React from "react";
import styled, { css } from "styled-components";
import PropTypes from "prop-types";
import Loader from "../loader";
const activeCss = css`
background-color: ${props => (props.primary ? '#1F97CA' : '#ECEEF1')};
color: ${props => (props.primary ? '#ffffff' : '#333333')};
background-color: ${props => (props.primary ? "#1F97CA" : "#ECEEF1")};
color: ${props => (props.primary ? "#ffffff" : "#333333")};
${props =>
!props.primary &&
css`
border: 1px solid #2DA7DB;
border: 1px solid #2da7db;
box-sizing: border-box;
`}
`;
const hoverCss = css`
background-color: ${props => (props.primary ? '#3DB8EC' : '#FFFFFF')};
color: ${props => (props.primary ? '#ffffff' : '#333333')};
background-color: ${props => (props.primary ? "#3DB8EC" : "#FFFFFF")};
color: ${props => (props.primary ? "#ffffff" : "#333333")};
${props =>
!props.primary &&
css`
border: 1px solid #2DA7DB;
border: 1px solid #2da7db;
box-sizing: border-box;
`}
`;
// eslint-disable-next-line no-unused-vars, react/prop-types
const ButtonWrapper = ({primary, scale, size, isHovered, isClicked, isDisabled, isLoading, label, innerRef, minWidth, ...props}) => <button ref={innerRef} type="button" {...props}></button>;
const ButtonWrapper = ({
primary,
scale,
size,
isHovered,
isClicked,
isDisabled,
isLoading,
label,
innerRef,
minWidth,
...props
}) => <button ref={innerRef} type="button" {...props}></button>;
ButtonWrapper.propTypes = {
label: PropTypes.string,
primary: PropTypes.bool,
size: PropTypes.oneOf(['base', 'medium', 'big', 'large']),
size: PropTypes.oneOf(["base", "medium", "big", "large"]),
scale: PropTypes.bool,
icon: PropTypes.node,
@ -45,93 +56,116 @@ ButtonWrapper.propTypes = {
isDisabled: PropTypes.bool,
isLoading: PropTypes.bool,
onClick: PropTypes.func,
onClick: PropTypes.func
};
const StyledButton = styled(ButtonWrapper).attrs((props) => ({
disabled: props.isDisabled || props.isLoading ? 'disabled' : '',
const StyledButton = styled(ButtonWrapper).attrs(props => ({
disabled: props.isDisabled || props.isLoading ? "disabled" : "",
tabIndex: props.tabIndex
}))`
height: ${props =>
(props.size === 'large' && '44px') ||
(props.size === 'big' && '36px') ||
(props.size === 'medium' && '32px') ||
(props.size === 'base' && '24px')
};
(props.size === "large" && "44px") ||
(props.size === "big" && "36px") ||
(props.size === "medium" && "32px") ||
(props.size === "base" && "24px")};
line-height: ${props =>
(props.size === 'large' && '20px') ||
(props.size === 'big' && '20px') ||
(props.size === 'medium' && '18px') ||
(props.size === 'base' && '15px')
};
(props.size === "large" && "20px") ||
(props.size === "big" && "20px") ||
(props.size === "medium" && "18px") ||
(props.size === "base" && "15px")};
font-size: ${props =>
(props.size === 'large' && '16px') ||
(props.size === 'big' && '14px') ||
(props.size === 'medium' && '13px') ||
(props.size === 'base' && '12px')
};
(props.size === "large" && "16px") ||
(props.size === "big" && "14px") ||
(props.size === "medium" && "13px") ||
(props.size === "base" && "12px")};
color: ${props => (props.primary && '#FFFFFF') || (!props.isDisabled ? '#333333' : '#ECEEF1')};
color: ${props =>
(props.primary && "#FFFFFF") ||
(!props.isDisabled ? "#333333" : "#ECEEF1")};
background-color: ${props =>
(!props.isDisabled || props.isLoading
? (props.primary ? '#2DA7DB' : '#FFFFFF')
: (props.primary ? '#A6DCF2' : '#FFFFFF'))
};
background-color: ${props =>
!props.isDisabled || props.isLoading
? props.primary
? "#2DA7DB"
: "#FFFFFF"
: props.primary
? "#A6DCF2"
: "#FFFFFF"};
${props => props.scale && `width: 100%;`}
padding: ${props =>
(props.size === 'large' && (props.primary
? (props.icon
? (props.label ? '11px 24px 13px 24px' : '11px 11px 13px 11px')
: (props.label ? '12px 28px 12px 28px' : '0px')
)
: (props.icon
? (props.label ? '11px 24px 13px 24px' : '11px 11px 13px 11px')
: (props.label ? '11px 28px 13px 28px' : '0px')
))
) ||
(props.size === 'big' && (props.primary
? (props.icon
? (props.label ? '8px 24px 9px 24px' : '8px 10px 9px 10px')
: (props.label ? '8px 26px 9px 25px' : '0px')
)
: (props.icon
? (props.label ? '8px 24px 9px 24px' : '8px 10px 9px 10px')
: (props.label ? '8px 26px 9px 25px' : '0px')
))
) ||
(props.size === 'medium' && (props.primary
? (props.icon
? (props.label ? '6px 24px 7px 24px' : '6px 10px 7px 10px')
: (props.label ? '7px 24px 7px 24px' : '0px')
)
: (props.icon
? (props.label ? '6px 24px 7px 24px' : '6px 10px 7px 10px')
: (props.label ? '7px 24px 7px 24px' : '0px')
))
) ||
(props.size === 'base' && (props.primary
? (props.icon
? (props.label ? '3px 20px 5px 20px' : '3px 5px 5px 5px')
: (props.label ? '3px 24px 5px 24px' : '0px')
)
: (props.icon
? (props.label ? '3px 20px 5px 20px' : '3px 5px 5px 5px')
: (props.label ? '3px 24px 5px 24px' : '0px')
))
)
};
(props.size === "large" &&
(props.primary
? props.icon
? props.label
? "11px 24px 13px 24px"
: "11px 11px 13px 11px"
: props.label
? "12px 20px 12px 20px"
: "0px"
: props.icon
? props.label
? "11px 24px 13px 24px"
: "11px 11px 13px 11px"
: props.label
? "12px 20px 12px 20px"
: "0px")) ||
(props.size === "big" &&
(props.primary
? props.icon
? props.label
? "8px 24px 9px 24px"
: "8px 10px 9px 10px"
: props.label
? "8px 16px 8px 16px"
: "0px"
: props.icon
? props.label
? "8px 24px 9px 24px"
: "8px 10px 9px 10px"
: props.label
? "8px 16px 8px 16px"
: "0px")) ||
(props.size === "medium" &&
(props.primary
? props.icon
? props.label
? "6px 24px 7px 24px"
: "6px 10px 7px 10px"
: props.label
? "7px 16px 7px 16px"
: "0px"
: props.icon
? props.label
? "6px 24px 7px 24px"
: "6px 10px 7px 10px"
: props.label
? "7px 16px 7px 16px"
: "0px")) ||
(props.size === "base" &&
(props.primary
? props.icon
? props.label
? "3px 20px 5px 20px"
: "3px 5px 5px 5px"
: props.label
? "4.5px 12px 4.5px 12px"
: "0px"
: props.icon
? props.label
? "3px 20px 5px 20px"
: "3px 5px 5px 5px"
: props.label
? "4.5px 12px 4.5px 12px"
: "0px"))};
${ props => props.minwidth
? `min-width: ${props.minwidth};`
: null
}
${props => (props.minwidth ? `min-width: ${props.minwidth};` : null)}
cursor: ${props => props.isDisabled || props.isLoading ? 'default !important' : 'pointer'};
cursor: ${props =>
props.isDisabled || props.isLoading ? "default !important" : "pointer"};
font-family: 'Open Sans', normal;
border: none;
@ -163,20 +197,31 @@ const StyledButton = styled(ButtonWrapper).attrs((props) => ({
css`
border: 1px solid;
box-sizing: border-box;
border-color: ${props => (!props.isDisabled && !props.isLoading) ? '#D0D5DA' : '#ECEEF1'};
border-color: ${props =>
!props.isDisabled && !props.isLoading ? "#D0D5DA" : "#ECEEF1"};
`}
${props => (!props.isDisabled && !props.isLoading) && (props.isHovered ? hoverCss : css`
&:hover {
${hoverCss}
}`)
}
${props =>
!props.isDisabled &&
!props.isLoading &&
(props.isHovered
? hoverCss
: css`
&:hover {
${hoverCss}
}
`)}
${props => (!props.isDisabled && !props.isLoading) && (props.isClicked ? activeCss : css`
&:active {
${activeCss}
}`)
}
${props =>
!props.isDisabled &&
!props.isLoading &&
(props.isClicked
? activeCss
: css`
&:active {
${activeCss}
}
`)}
&:focus {
outline: none
@ -189,33 +234,32 @@ const StyledButton = styled(ButtonWrapper).attrs((props) => ({
}
.loader {
vertical-align: ${props => ( props.size === 'large' || props.size === 'base' )
? 'middle'
: props.size === 'medium'
? 'text-bottom'
: 'text-top'};
vertical-align: ${props =>
props.size === "large" || props.size === "base"
? "middle"
: props.size === "medium"
? "text-bottom"
: "text-top"};
}
${props => props.label && css`
.btnIcon,
.loader {
padding-right: 4px;
}
`}
${props =>
props.label &&
css`
.btnIcon,
.loader {
padding-right: 4px;
}
`}
`;
const Icon = ({size, primary, icon}) => (
const Icon = ({ size, primary, icon }) => (
<div className="btnIcon">
{ icon && React.cloneElement(icon,
{
isfill: true,
size: size === "large"
? "large"
: size === "big"
? "medium"
: "small",
color: primary ? "#FFFFFF" : '#333333'
})}
{icon &&
React.cloneElement(icon, {
isfill: true,
size: size === "large" ? "large" : size === "big" ? "medium" : "small",
color: primary ? "#FFFFFF" : "#333333"
})}
</div>
);
@ -230,18 +274,24 @@ Icon.defaultProps = {
};
const Button = React.forwardRef((props, ref) => {
const { primary, size, isLoading, icon, label} = props;
const { primary, size, isLoading, icon, label } = props;
const iconProps = { primary, size, icon };
return (
<StyledButton innerRef={ref} {...props} >
{(isLoading || icon)
? (isLoading
? <Loader type="oval" size={
size === "large" ? '18px' : size === 'big' ? '16px' : '14px'
} color={primary ? "#FFFFFF" : '#333333'} className="loader" />
: <Icon {...iconProps} />)
: ""
}
<StyledButton innerRef={ref} {...props}>
{isLoading || icon ? (
isLoading ? (
<Loader
type="oval"
size={size === "large" ? "18px" : size === "big" ? "16px" : "14px"}
color={primary ? "#FFFFFF" : "#333333"}
className="loader"
/>
) : (
<Icon {...iconProps} />
)
) : (
""
)}
{label}
</StyledButton>
);
@ -250,7 +300,7 @@ const Button = React.forwardRef((props, ref) => {
Button.propTypes = {
label: PropTypes.string,
primary: PropTypes.bool,
size: PropTypes.oneOf(['base', 'medium', 'big', 'large']),
size: PropTypes.oneOf(["base", "medium", "big", "large"]),
scale: PropTypes.bool,
icon: PropTypes.node,
@ -270,14 +320,14 @@ Button.propTypes = {
};
Button.defaultProps = {
label: '',
label: "",
primary: false,
size: 'base',
size: "base",
scale: false,
icon: null,
tabIndex: -1,
minwidth: null,
isHovered: false,

View File

@ -1,50 +1,64 @@
import React, { Component } from "react";
import PropTypes from "prop-types";
import styled from 'styled-components';
import styled from "styled-components";
import isEqual from "lodash/isEqual";
import IconButton from '../icon-button';
import TextInput from '../text-input';
import IconButton from "../icon-button";
import TextInput from "../text-input";
const StyledFileInput = styled.div`
display: flex;
position: relative;
outline: none;
width: ${props =>
(props.scale && '100%') ||
(props.size === 'base' && '173px') ||
(props.size === 'middle' && '300px') ||
(props.size === 'big' && '350px') ||
(props.size === 'huge' && '500px') ||
(props.size === 'large' && '550px')
};
(props.scale && "100%") ||
(props.size === "base" && "173px") ||
(props.size === "middle" && "300px") ||
(props.size === "big" && "350px") ||
(props.size === "huge" && "500px") ||
(props.size === "large" && "550px")};
.text-input {
border-color: ${props => (props.hasError && '#c30') || (props.hasWarning && '#f1ca92') || (props.isDisabled && '#ECEEF1')|| '#D0D5DA'};
.text-input {
border-color: ${props =>
(props.hasError && "#c30") ||
(props.hasWarning && "#f1ca92") ||
(props.isDisabled && "#ECEEF1") ||
"#D0D5DA"};
text-overflow: ellipsis;
padding-right: 40px;
padding-right: ${ props => props.size === 'large' ? '64px'
: props.size === 'huge' ? '58px'
: props.size === 'big' ? '53px'
: props.size === 'middle' ? '48px'
: '37px'
};
cursor: ${props => props.isDisabled ? 'default' : 'pointer'};
padding-right: ${props =>
props.size === "large"
? "64px"
: props.size === "huge"
? "58px"
: props.size === "big"
? "53px"
: props.size === "middle"
? "48px"
: "37px"};
cursor: ${props => (props.isDisabled ? "default" : "pointer")};
}
:hover{
:hover {
.icon {
border-color: ${props => (props.hasError && '#c30') || (props.hasWarning && '#f1ca92') || (props.isDisabled && '#ECEEF1')|| '#A3A9AE'};
border-color: ${props =>
(props.hasError && "#c30") ||
(props.hasWarning && "#f1ca92") ||
(props.isDisabled && "#ECEEF1") ||
"#A3A9AE"};
}
}
:active {
.icon {
border-color: ${props => (props.hasError && '#c30') || (props.hasWarning && '#f1ca92') || (props.isDisabled && '#ECEEF1')|| '#2DA7DB'};
border-color: ${props =>
(props.hasError && "#c30") ||
(props.hasWarning && "#f1ca92") ||
(props.isDisabled && "#ECEEF1") ||
"#2DA7DB"};
}
}
.icon {
display: flex;
align-items: center;
@ -53,120 +67,135 @@ const StyledFileInput = styled.div`
position: absolute;
right: 0;
width: ${props => props.size === 'large' ? '48px'
: props.size === 'huge' ? '38px'
: props.size === 'big' ? '37px'
: props.size === 'middle' ? '36px'
: '30px'
};
width: ${props =>
props.size === "large"
? "48px"
: props.size === "huge"
? "38px"
: props.size === "big"
? "37px"
: props.size === "middle"
? "36px"
: "30px"};
height: ${props => props.size === 'large' ? '43px'
: props.size === 'huge' ? '37px'
: props.size === 'big' ? '36px'
: props.size === 'middle' ? '36px'
: '30px'
};
height: ${props =>
props.size === "large"
? "43px"
: props.size === "huge"
? "37px"
: props.size === "big"
? "36px"
: props.size === "middle"
? "36px"
: "30px"};
margin: 0;
border: 1px solid;
border-radius: 0 3px 3px 0;
border-color: ${props => (props.hasError && '#c30') || (props.hasWarning && '#f1ca92') || (props.isDisabled && '#ECEEF1')|| '#D0D5DA'};
cursor: ${props => (props.isDisabled ? 'default' : 'pointer')}
border-color: ${props =>
(props.hasError && "#c30") ||
(props.hasWarning && "#f1ca92") ||
(props.isDisabled && "#ECEEF1") ||
"#D0D5DA"};
cursor: ${props => (props.isDisabled ? "default" : "pointer")};
}
.icon-button {
cursor: ${props => props.isDisabled ? 'default' : 'pointer'}
cursor: ${props => (props.isDisabled ? "default" : "pointer")};
}
`;
class FileInput extends Component {
class FileInput extends Component {
constructor(props) {
super(props);
this.inputRef = React.createRef();
this.state = {
fileName: '',
fileName: "",
file: null
}
};
}
shouldComponentUpdate(nextProps, nextState) {
return (!isEqual(this.props, nextProps) || !isEqual(this.state, nextState));
return !isEqual(this.props, nextProps) || !isEqual(this.state, nextState);
}
onIconFileClick = e => {
const { isDisabled } = this.props;
if(isDisabled) {
if (isDisabled) {
return false;
}
e.target.blur();
this.inputRef.current.click();
}
};
onChangeHandler = e => {
this.setState({
fileName: e.target.value
})
}
});
};
onInputFile = () => {
const { onInput } = this.props;
if ( this.inputRef.current.files.length > 0 ) {
this.setState({
fileName: this.inputRef.current.files[0].name,
file: this.inputRef.current.files[0]
}, () => {
if(onInput) {
this.inputRef.current.value = '';
onInput(this.state.file);
if (this.inputRef.current.files.length > 0) {
this.setState(
{
fileName: this.inputRef.current.files[0].name,
file: this.inputRef.current.files[0]
},
() => {
if (onInput) {
this.inputRef.current.value = "";
onInput(this.state.file);
}
}
});
}
}
);
}
};
render() {
//console.log('render FileInput');
const { fileName } = this.state;
const {
size,
const {
size,
placeholder,
isDisabled,
scale,
isDisabled,
scale,
hasError,
hasWarning,
accept,
id,
onInput, // eslint-disable-line no-unused-vars
...rest
...rest
} = this.props;
let iconSize = 0;
switch (size) {
case 'base':
case "base":
iconSize = 15;
break;
case 'middle':
case "middle":
iconSize = 15;
break;
case 'big':
case "big":
iconSize = 16;
break;
case 'huge':
case "huge":
iconSize = 16;
break;
case 'large':
case "large":
iconSize = 16;
break;
}
return(
<StyledFileInput
size={size}
return (
<StyledFileInput
size={size}
scale={scale ? 1 : 0}
hasError={hasError}
hasWarning={hasWarning}
@ -187,17 +216,15 @@ class FileInput extends Component {
/>
<input
type="file"
id={id}
ref={this.inputRef}
style={{ display: 'none' }}
style={{ display: "none" }}
accept={accept}
onInput={this.onInputFile}
/>
<div
className="icon"
onClick={this.onIconFileClick}
>
<IconButton
className='icon-button'
<div className="icon" onClick={this.onIconFileClick}>
<IconButton
className="icon-button"
iconName={"CatalogFolderIcon"}
color={"#A3A9AE"}
size={iconSize}
@ -205,14 +232,14 @@ class FileInput extends Component {
/>
</div>
</StyledFileInput>
)
);
}
}
FileInput.propTypes = {
style: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),
placeholder: PropTypes.string,
size: PropTypes.oneOf(['base', 'middle', 'big', 'huge', 'large']),
size: PropTypes.oneOf(["base", "middle", "big", "huge", "large"]),
scale: PropTypes.bool,
className: PropTypes.string,
hasError: PropTypes.bool,
@ -225,12 +252,12 @@ FileInput.propTypes = {
};
FileInput.defaultProps = {
size: 'base',
size: "base",
scale: false,
hasWarning: false,
hasError: false,
isDisabled: false,
accept: ''
}
accept: ""
};
export default FileInput;
export default FileInput;

View File

@ -71,6 +71,7 @@ import OrigImportIcon from "./import.react.svg";
import OrigCatalogPinIcon from "./catalog.pin.react.svg";
import OrigCopyIcon from "./copy.react.svg";
import OrigShareEmailIcon from "./share.e-mail.react.svg";
import OrigPaymentsIcon from "./payments.react.svg";
import OrigShareGooglePlusIcon from "./share.google.plus.react.svg";
import OrigSendClockIcon from "./send.clock.react.svg";
import OrigAccessNoneIcon from "./access.none.react.svg";
@ -604,6 +605,8 @@ export const SendClockIcon = createStyledIcon(
"SendClockIcon"
);
export const SettingsIcon = createStyledIcon(OrigSettingsIcon, "SettingsIcon");
export const PaymentsIcon = createStyledIcon(OrigPaymentsIcon, "PaymentsIcon");
export const ShareEmailIcon = createStyledIcon(
OrigShareEmailIcon,
"ShareEmailIcon"

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 12C1 5.9251 5.9251 1 12 1C18.0749 1 23 5.9251 23 12C23 18.0749 18.0749 23 12 23C5.9251 23 1 18.0749 1 12ZM13.5715 17.7967C14.4099 17.5922 15.0485 17.1878 15.6005 16.5882C17.1263 14.9336 16.543 12.5028 14.3975 11.4338C13.7777 11.1297 13.1277 10.8909 12.4751 10.6511C12.4094 10.6269 12.3437 10.6028 12.2781 10.5786C11.8667 10.4252 11.4657 10.2486 11.1168 9.9976C10.4242 9.50493 10.5544 8.7055 11.3667 8.38945C11.5959 8.30114 11.8354 8.27325 12.0802 8.25931C12.1843 8.25466 12.2937 8.25001 12.3978 8.25001C13.2206 8.25001 14.007 8.40804 14.7568 8.73339C14.9027 8.79846 15.0172 8.83099 15.111 8.83099C15.2776 8.83099 15.3661 8.7148 15.4599 8.46381C15.5671 8.15964 15.6659 7.85043 15.7645 7.54175C15.8 7.43064 15.8354 7.31961 15.8713 7.2089C15.965 6.92538 15.8504 6.73947 15.5536 6.62327C15.012 6.40947 14.4548 6.25609 13.8664 6.17243C13.468 6.1168 13.2769 6.09012 13.1846 5.98037C13.0994 5.87923 13.0981 5.70755 13.0956 5.37765L13.0956 5.37705C13.0904 4.44342 13.0902 4.40625 12.1218 4.40625H12.0021H11.7052H11.5282C11.0178 4.42019 10.9345 4.49921 10.9189 4.95469C10.9111 5.11163 10.912 5.26595 10.913 5.41962C10.9134 5.47075 10.9137 5.5218 10.9137 5.57286C10.9137 6.17082 10.9086 6.17246 10.2775 6.37515L10.2575 6.38158C8.67964 6.89284 7.70583 7.8503 7.60168 9.38409C7.50794 10.7413 8.29949 11.6569 9.5493 12.3262C10.0804 12.6112 10.6486 12.8146 11.2181 13.0185C11.4751 13.1104 11.7323 13.2025 11.9864 13.3022C12.3041 13.4277 12.6113 13.5718 12.8769 13.767C13.6633 14.3433 13.5174 15.3054 12.5853 15.668C12.2156 15.812 11.8354 15.8771 11.4448 15.8771C11.3042 15.8771 11.1636 15.8678 11.023 15.8539C10.1846 15.7609 9.38786 15.5657 8.63798 15.2171C8.47654 15.1428 8.35677 15.1009 8.26303 15.1009C8.1016 15.1009 8.01307 15.2218 7.91934 15.4913C7.78915 15.8585 7.67458 16.2304 7.56002 16.6022C7.409 17.1041 7.46628 17.2203 7.99745 17.4527C8.67443 17.7456 9.59425 17.8943 10.3337 18.0012C10.9118 18.0848 10.9326 18.1034 10.9378 18.6426C10.9378 18.8843 10.9378 19.1306 10.943 19.3723C10.943 19.6791 11.1096 19.8603 11.4638 19.865C11.6512 19.8696 11.8387 19.8696 12.0262 19.8696C12.1813 19.8696 12.2779 19.8672 12.4011 19.864C12.4474 19.8629 12.4976 19.8616 12.556 19.8603C12.8841 19.851 13.0559 19.693 13.0559 19.3955C13.0573 19.3114 13.0592 19.2276 13.0612 19.144C13.067 18.8947 13.0728 18.6468 13.0612 18.3962C13.0403 18.057 13.207 17.885 13.5715 17.7967Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -2,10 +2,11 @@ import React from 'react'
import { ToastContainer, cssTransition } from 'react-toastify'
import styled from 'styled-components'
import PropTypes from 'prop-types'
import { tablet } from '../../utils/device'
const Fade = cssTransition({
enter: 'fadeIn',
exit: 'fadeOut'
const Slide = cssTransition({
enter: 'SlideIn',
exit: 'SlideOut'
});
const toastColors = {
@ -24,7 +25,7 @@ const toastColors = {
};
const StyledToastContainer = styled(ToastContainer)`
width: 365px !important;
width: 365px;
z-index: 9999;
-webkit-transform: translateZ(9999px);
position: fixed;
@ -32,180 +33,188 @@ const StyledToastContainer = styled(ToastContainer)`
width: 320px;
box-sizing: border-box;
color: #fff;
top: 1em;
right: 1em;
margin-top: 40px;
top: 16px;
right: 24px;
margin-top: 0px;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
@media only screen and (max-width: 480px) {
width: 100vw;
.Toastify__progress-bar--animated {
animation: Toastify__trackProgress linear 1 forwards;
}
.Toastify__toast-body {
margin: auto 0;
-ms-flex: 1;
flex: 1;
}
.Toastify__close-button {
color: #fff;
font-weight: 700;
font-size: 14px;
background: transparent;
outline: none;
border: none;
padding: 0;
left: 0;
margin: 0;
}
.Toastify__progress-bar--animated {
animation: Toastify__trackProgress linear 1 forwards;
}
.Toastify__toast-body {
margin: auto 0;
-ms-flex: 1;
flex: 1;
}
.Toastify__close-button {
color: #fff;
font-weight: 700;
font-size: 14px;
background: transparent;
outline: none;
border: none;
padding: 0;
cursor: pointer;
opacity: 0.7;
transition: 0.3s ease;
-ms-flex-item-align: start;
align-self: flex-start;
}
.Toastify__close-button:focus,
.Toastify__close-button:hover {
opacity: 1;
}
@keyframes Toastify__trackProgress {
0% {
transform: scaleX(1);
cursor: pointer;
opacity: 0.7;
transition: 0.3s ease;
-ms-flex-item-align: start;
align-self: flex-start;
}
to {
transform: scaleX(0);
.Toastify__close-button:focus,
.Toastify__close-button:hover {
opacity: 1;
}
}
.Toastify__toast--success{
background-color: ${toastColors.active.success};
@keyframes SlideIn {
from {
transform: translate3d(150%, 0, 0);
}
&:hover {
background-color: ${toastColors.hover.success};
50% {
transform: translate3d(0, 0, 0);
}
}
}
.Toastify__toast--error{
background-color: ${toastColors.active.error};
&:hover {
background-color: ${toastColors.hover.error};
.SlideIn {
animation-name: SlideIn;
}
}
.Toastify__toast--info{
background-color: ${toastColors.active.info};
@keyframes SlideOut {
from {
opacity:1;
}
&:hover {
background-color: ${toastColors.hover.info};
to{
opacity:0;
}
}
}
.Toastify__toast--warning{
background-color: ${toastColors.active.warning};
&:hover {
background-color: ${toastColors.hover.warning};
.SlideOut {
animation-name: SlideOut;
}
}
@-webkit-keyframes fadeout {
0% {
opacity: 1;
@keyframes Toastify__trackProgress {
0% {
transform: scaleX(1);
}
to {
transform: scaleX(0);
}
}
.Toastify__toast--success{
background-color: ${toastColors.active.success};
&:hover {
background-color: ${toastColors.hover.success};
}
}
.Toastify__toast--error{
background-color: ${toastColors.active.error};
&:hover {
background-color: ${toastColors.hover.error};
}
}
.Toastify__toast--info{
background-color: ${toastColors.active.info};
&:hover {
background-color: ${toastColors.hover.info};
}
}
.Toastify__toast--warning{
background-color: ${toastColors.active.warning};
&:hover {
background-color: ${toastColors.hover.warning};
}
}
.Toastify__toast {
box-sizing: border-box;
margin-bottom: 1rem;
box-shadow: 0px 10px 16px -12px rgba(0,0,0,0.30);
display: flex;
justify-content: space-between;
max-height: 800px;
overflow: hidden;
cursor: pointer;
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
color: #000;
margin: 0 0 12px;
padding: 12px;
min-height: 32px;
font: normal 12px 'Open Sans', sans-serif;
width: 100%;
right: 0;
transition: 0.3s;
/* @media ${tablet} { // TODO: Discuss the behavior of notifications on mobile devices
position: absolute;
&:nth-child(1){
z-index: 3;
top:0px;
}
100% {
opacity: 0;
&:nth-child(2){
z-index: 2;
top:8px;
}
}
@keyframes fadeout {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
.fadeOut {
opacity: 0;
-moz-animation: fadeout 1s linear;
-webkit-animation: fadeout 1s linear;
animation: fadeout 1s linear;
}
@-webkit-keyframes fadein {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes fadein {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.fadeIn {
opacity: 1;
-moz-animation: fadein 0.3s linear;
-webkit-animation: fadein 0.3s linear;
animation: fadein 0.3s linear;
}
/* .Toastily__toast or & > div (less productive) */
.Toastify__toast
{
box-sizing: border-box;
margin-bottom: 1rem;
box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.1), 0 2px 15px 0 rgba(0, 0, 0, 0.05);
display: flex;
justify-content: space-between;
max-height: 800px;
overflow: hidden;
cursor: pointer;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
color: #000;
margin: 0 0 6px;
padding: 12px;
min-height: 32px;
font: normal 12px 'Open Sans', sans-serif;
width: 100%;
&:nth-child(3){
z-index: 1;
top: 16px;
}
}*/
}
/* .Toastify__toast-body or & > div > div (less productive) */
.Toastify__toast-body {
.Toastify__toast-body {
display: flex;
align-items: center;
}
@media ${tablet} {
right: 16px;
}
@media only screen and (max-width: 480px) {
padding: 0 16px;
left: 0;
margin: auto;
right: 0;
width: 100%;
@keyframes SlideIn {
from {
transform: translate3d(0, -150%, 0);
}
50% {
transform: translate3d(0, 0, 0);
}
}
}
`;
const Toast = props => {
//console.log("Toast render");
return (
<StyledToastContainer
className={props.className}
draggable={false}
draggable={true}
position="top-right"
hideProgressBar={true}
id={props.id}
newestOnTop={true}
pauseOnFocusLoss={false}
style={props.style}
transition={Fade}
transition={Slide}
/>
);
};

View File

@ -1508,10 +1508,10 @@
"@types/yargs" "^15.0.0"
chalk "^3.0.0"
"@jest/types@^26.3.0":
version "26.3.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.3.0.tgz#97627bf4bdb72c55346eef98e3b3f7ddc4941f71"
integrity sha512-BDPG23U0qDeAvU4f99haztXwdAg3hz4El95LkAM+tHAqqhiVzRpEGHHU8EDxT/AnxOrA65YjLBwDahdJ9pTLJQ==
"@jest/types@^26.5.0":
version "26.5.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.5.0.tgz#163f6e00c5ac9bb6fc91c3802eaa9d0dd6e1474a"
integrity sha512-nH9DFLqaIhB+RVgjivemvMiFSWw/BKwbZGxBAMv8CCTvUyFoK8RwHhAlmlXIvMBrf5Z3YQ4p9cq3Qh9EDctGvA==
dependencies:
"@types/istanbul-lib-coverage" "^2.0.0"
"@types/istanbul-reports" "^3.0.0"
@ -1611,9 +1611,9 @@
uuid "^3.3.2"
"@storybook/addon-console@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@storybook/addon-console/-/addon-console-1.2.1.tgz#f338401661b4636118b13839848061e996d4e104"
integrity sha512-2iDbDTipWonvRpIqLLntfhCGvawFFvoG1xyErpyL7K/HRdQ1zzIvR1Qm83S7TK8Vg+RzZWm4wcDbxx7WOsFCNg==
version "1.2.2"
resolved "https://registry.yarnpkg.com/@storybook/addon-console/-/addon-console-1.2.2.tgz#018cd712e1ed6eee1a7eae57c3d96f1fbbedc191"
integrity sha512-aTuYoz1Fit9PAhy0VDTjQ5rovRz5a+DgPRIaA5cktkiA9Y0ikK/cu525DDZLTh7oNMOt0fmRYyYPtknTMyeXrQ==
dependencies:
global "^4.3.2"
@ -2258,9 +2258,9 @@
loader-utils "^2.0.0"
"@testing-library/dom@*":
version "7.24.2"
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.24.2.tgz#6d2b7dd21efbd5358b98c2777fc47c252f3ae55e"
integrity sha512-ERxcZSoHx0EcN4HfshySEWmEf5Kkmgi+J7O79yCJ3xggzVlBJ2w/QjJUC+EBkJJ2OeSw48i3IoePN4w8JlVUIA==
version "7.24.3"
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.24.3.tgz#dae3071463cf28dc7755b43d9cf2202e34cbb85d"
integrity sha512-6eW9fUhEbR423FZvoHRwbWm9RUUByLWGayYFNVvqTnQLYvsNpBS4uEuKH9aqr3trhxFwGVneJUonehL3B1sHJw==
dependencies:
"@babel/code-frame" "^7.10.4"
"@babel/runtime" "^7.10.3"
@ -2303,9 +2303,9 @@
integrity sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==
"@types/babel__core@^7.1.0":
version "7.1.9"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d"
integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==
version "7.1.10"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.10.tgz#ca58fc195dd9734e77e57c6f2df565623636ab40"
integrity sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
@ -2314,31 +2314,33 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
version "7.6.1"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
version "7.6.2"
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
dependencies:
"@babel/types" "^7.0.0"
"@types/babel__template@*":
version "7.0.2"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
version "7.0.3"
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.3.tgz#b8aaeba0a45caca7b56a5de9459872dde3727214"
integrity sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
version "7.0.14"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.14.tgz#e99da8c075d4fb098c774ba65dabf7dc9954bd13"
integrity sha512-8w9szzKs14ZtBVuP6Wn7nMLRJ0D6dfB0VEBEyRgxrZ/Ln49aNMykrghM2FaNn4FJRzNppCSa0Rv9pBRM5Xc3wg==
version "7.0.15"
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03"
integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==
dependencies:
"@babel/types" "^7.3.0"
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/cheerio@^0.22.22":
version "0.22.22"
resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.22.tgz#ae71cf4ca59b8bbaf34c99af7a5d6c8894988f5f"
integrity sha512-05DYX4zU96IBfZFY+t3Mh88nlwSMtmmzSYaQkKN48T495VV1dkHSah6qYyDTN5ngaS0i0VonH37m+RuzSM0YiA==
dependencies:
"@types/node" "*"
"@types/estree@*":
version "0.0.45"
@ -2366,9 +2368,9 @@
integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA==
"@types/html-minifier-terser@^5.0.0":
version "5.1.0"
resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880"
integrity sha512-iYCgjm1dGPRuo12+BStjd1HiVQqhlRhWDOQigNxn023HcjnhsiFz9pc6CzJj4HwDCSQca9bxTL4PxJDbkdm3PA==
version "5.1.1"
resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50"
integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA==
"@types/is-function@^1.0.0":
version "1.0.0"
@ -2420,9 +2422,9 @@
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*":
version "14.11.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
version "14.11.2"
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.2.tgz#2de1ed6670439387da1c9f549a2ade2b0a799256"
integrity sha512-jiE3QIxJ8JLNcb1Ps6rDbysDhN4xa8DJJvuC9prr6w+1tIh+QAbYyNF3tyiZNLDBIuBCf4KEcV2UvQm/V60xfA==
"@types/normalize-package-data@^2.4.0":
version "2.4.0"
@ -2450,9 +2452,9 @@
integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==
"@types/reach__router@^1.2.3":
version "1.3.5"
resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.5.tgz#14e1e981cccd3a5e50dc9e969a72de0b9d472f6d"
integrity sha512-h0NbqXN/tJuBY/xggZSej1SKQEstbHO7J/omt1tYoFGmj3YXOodZKbbqD4mNDh7zvEGYd7YFrac1LTtAr3xsYQ==
version "1.3.6"
resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.6.tgz#413417ce74caab331c70ce6a03a4c825188e4709"
integrity sha512-RHYataCUPQnt+GHoASyRLq6wmZ0n8jWlBW8Lxcwd30NN6vQfbmTeoSDfkgxO0S1lEzArp8OFDsq5KIs7FygjtA==
dependencies:
"@types/history" "*"
"@types/react" "*"
@ -2487,9 +2489,9 @@
"@types/react" "*"
"@types/react@*":
version "16.9.49"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.49.tgz#09db021cf8089aba0cdb12a49f8021a69cce4872"
integrity sha512-DtLFjSj0OYAdVLBbyjhuV9CdGVHCkHn2R+xr3XkBvK2rS1Y1tkc14XSGjYgm5Fjjr90AxH9tiSzc1pCFMGO06g==
version "16.9.50"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.50.tgz#cb5f2c22d42de33ca1f5efc6a0959feb784a3a2d"
integrity sha512-kPx5YsNnKDJejTk1P+lqThwxN2PczrocwsvqXnjvVvKpFescoY62ZiM3TV7dH1T8lFhlHZF+PE5xUyimUwqEGA==
dependencies:
"@types/prop-types" "*"
csstype "^3.0.2"
@ -2547,9 +2549,9 @@
pretty-format "^25.1.0"
"@types/uglify-js@*":
version "3.9.3"
resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz#d94ed608e295bc5424c9600e6b8565407b6b4b6b"
integrity sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==
version "3.11.0"
resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.11.0.tgz#2868d405cc45cd9dc3069179052103032c33afbc"
integrity sha512-I0Yd8TUELTbgRHq2K65j8rnDPAzAP+DiaF/syLem7yXwYLsHZhPd+AM2iXsWmf9P2F2NlFCgl5erZPQx9IbM9Q==
dependencies:
source-map "^0.6.1"
@ -2559,9 +2561,9 @@
integrity sha512-5oiXqR7kwDGZ6+gmzIO2lTC+QsriNuQXZDWNYRV3l2XRN/zmPgnC21DLSx2D05zvD8vnXW6qUg7JnXZ4I6qLVQ==
"@types/webpack-sources@*":
version "1.4.2"
resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.2.tgz#5d3d4dea04008a779a90135ff96fb5c0c9e6292c"
integrity sha512-77T++JyKow4BQB/m9O96n9d/UUHWLQHlcqXb9Vsf4F1+wKNrrlWNFPDLKNT92RJnCSL6CieTc+NDXtCVZswdTw==
version "2.0.0"
resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.0.0.tgz#08216ab9be2be2e1499beaebc4d469cec81e82a7"
integrity sha512-a5kPx98CNFRKQ+wqawroFunvFqv7GHm/3KOI52NY9xWADgc8smu4R6prt4EU/M4QfVjvgBkMqU4fBhw3QfMVkg==
dependencies:
"@types/node" "*"
"@types/source-list-map" "*"
@ -2585,16 +2587,16 @@
integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
"@types/yargs@^13.0.0":
version "13.0.10"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.10.tgz#e77bf3fc73c781d48c2eb541f87c453e321e5f4b"
integrity sha512-MU10TSgzNABgdzKvQVW1nuuT+sgBMWeXNc3XOs5YXV5SDAK+PPja2eUuBNB9iqElu03xyEDqlnGw0jgl4nbqGQ==
version "13.0.11"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.11.tgz#def2f0c93e4bdf2c61d7e34899b17e34be28d3b1"
integrity sha512-NRqD6T4gktUrDi1o1wLH3EKC1o2caCr7/wR87ODcbVITQF106OM3sFN92ysZ++wqelOd1CTzatnOBRDYYG6wGQ==
dependencies:
"@types/yargs-parser" "*"
"@types/yargs@^15.0.0":
version "15.0.5"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz#947e9a6561483bdee9adffc983e91a6902af8b79"
integrity sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==
version "15.0.7"
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.7.tgz#dad50a7a234a35ef9460737a56024287a3de1d2b"
integrity sha512-Gf4u3EjaPNcC9cTu4/j2oN14nSVhr8PQ+BvBcBQHAhDZfl0bVIiLgvnRXv/dn58XhTm9UXvBpvJpDlwV65QxOA==
dependencies:
"@types/yargs-parser" "*"
@ -2790,14 +2792,14 @@ acorn@^5.5.3:
integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
acorn@^6.0.1, acorn@^6.4.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
version "6.4.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
acorn@^7.1.0, acorn@^7.1.1:
version "7.4.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c"
integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==
version "7.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
add-dom-event-listener@^1.1.0:
version "1.1.0"
@ -2949,11 +2951,10 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
color-convert "^1.9.0"
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
dependencies:
"@types/color-name" "^1.1.1"
color-convert "^2.0.1"
ansi-to-html@^0.6.11:
@ -3455,9 +3456,9 @@ babel-plugin-named-asset-import@^0.3.1:
integrity sha512-1aGDUfL1qOOIoqk9QKGIo2lANk+C7ko/fqH0uIyC71x3PEGz0uVP8ISgfEsFuG+FKmjHTvFK/nNM8dowpmUxLA==
babel-plugin-react-docgen@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.1.0.tgz#1dfa447dac9ca32d625a123df5733a9e47287c26"
integrity sha512-vzpnBlfGv8XOhJM2zbPyyqw2OLEbelgZZsaaRRTpVwNKuYuc+pUg4+dy7i9gCRms0uOQn4osX571HRcCJMJCmA==
version "4.2.0"
resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.2.0.tgz#4f425692f0ca06c73a1462274d370a3ac0637b46"
integrity sha512-B3tjZwKskcia9TsqkND+9OTjl/F5A5OBvRJ6Ktg34CONoxm+kB3CJ52wk5TjbszX9gqCPcAuc0GgkhT0CLuT/Q==
dependencies:
lodash "^4.17.15"
react-docgen "^5.0.0"
@ -3846,12 +3847,12 @@ browserslist@4.7.0:
node-releases "^1.1.29"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.8.5, browserslist@^4.9.1:
version "4.14.3"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.3.tgz#381f9e7f13794b2eb17e1761b4f118e8ae665a53"
integrity sha512-GcZPC5+YqyPO4SFnz48/B0YaCwS47Q9iPChRGi6t7HhflKBcINzFrJvRfC+jp30sRMKxF+d4EHGs27Z0XP1NaQ==
version "4.14.5"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015"
integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==
dependencies:
caniuse-lite "^1.0.30001131"
electron-to-chromium "^1.3.570"
caniuse-lite "^1.0.30001135"
electron-to-chromium "^1.3.571"
escalade "^3.1.0"
node-releases "^1.1.61"
@ -4031,10 +4032,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001131:
version "1.0.30001132"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001132.tgz#309279274f10d3aa736aa91fa269fcc8d0cd7ef9"
integrity sha512-zk5FXbnsmHa0Ktc/NOZJRr+ilXva+2KFJuRiQfnjkxJfV/7DYP5C27lSQF++/veCUzVWE5xecZnSBJjf6fSwJA==
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001135:
version "1.0.30001143"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001143.tgz#560f2cfb9f313d1d7e52eb8dac0e4e36c8821c0d"
integrity sha512-p/PO5YbwmCpBJPxjOiKBvAlUPgF8dExhfEpnsH+ys4N/791WHrYrGg0cyHiAURl5hSbx5vIcjKmQAP6sHDYH3w==
capture-exit@^2.0.0:
version "2.0.0"
@ -4786,9 +4787,9 @@ css-what@2.1:
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
css-what@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39"
integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==
version "3.4.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.1.tgz#81cb70b609e4b1351b1e54cbc90fd9c54af86e2e"
integrity sha512-wHOppVDKl4vTAOWzJt5Ek37Sgd9qq1Bmj/T1OjvicWbU5W7ru7Pqbn0Jdqii3Drx/h+dixHKXNhZYx7blthL7g==
css@^2.2.4:
version "2.2.4"
@ -5138,9 +5139,9 @@ dom-accessibility-api@^0.3.0:
integrity sha512-PzwHEmsRP3IGY4gv/Ug+rMeaTIyTJvadCb+ujYXYeIylbHJezIyNToe8KfEgHTCEYyC+/bUghYOGg8yMGlZ6vA==
dom-accessibility-api@^0.5.1:
version "0.5.2"
resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.2.tgz#ef3cdb5d3f0d599d8f9c8b18df2fb63c9793739d"
integrity sha512-k7hRNKAiPJXD2aBqfahSo4/01cTsKWXf+LqJgglnkN2Nz8TsxXKQBXHhKe0Ye9fEfHEZY49uSA5Sr3AqP/sWKA==
version "0.5.3"
resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.3.tgz#0ea493c924d4070dfbf531c4aaca3d7a2c601aab"
integrity sha512-yfqzAi1GFxK6EoJIZKgxqJyK6j/OjEFEUi2qkNThD/kUhoCFSG1izq31B5xuxzbJBGw9/67uPtkPMYAzWL7L7Q==
dom-converter@^0.2:
version "0.2.0"
@ -5225,10 +5226,10 @@ domhandler@^2.3.0:
dependencies:
domelementtype "1"
domhandler@^3.0, domhandler@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.0.0.tgz#51cd13efca31da95bbb0c5bee3a48300e333b3e9"
integrity sha512-eKLdI5v9m67kbXQbJSNn1zjh0SDzvzWVWtX+qEI3eMjZw8daH9k8rlj1FZY9memPwjiskQFbe7vHVVJIAqoEhw==
domhandler@^3.0.0, domhandler@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
dependencies:
domelementtype "^2.0.1"
@ -5248,14 +5249,14 @@ domutils@^1.5.1, domutils@^1.7.0:
dom-serializer "0"
domelementtype "1"
domutils@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.3.0.tgz#6469c63a3da2de0c3016f3a59e6a969e10705bce"
integrity sha512-xWC75PM3QF6MjE5e58OzwTX0B/rPQnlqH0YyXB/c056RtVJA+eu60da2I/bdnEHzEYC00g8QaZUlAbqOZVbOsw==
domutils@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.2.tgz#7ee5be261944e1ad487d9aa0616720010123922b"
integrity sha512-NKbgaM8ZJOecTZsIzW5gSuplsX2IWW2mIK7xVr8hTQF2v1CJWTmLZ1HOCh5sH+IzVPAGE5IucooOkvwBRAdowA==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.0.1"
domhandler "^3.0.0"
domhandler "^3.3.0"
dot-case@^3.0.3:
version "3.0.3"
@ -5334,10 +5335,10 @@ ejs@^2.7.4:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba"
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.570:
version "1.3.570"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.570.tgz#3f5141cc39b4e3892a276b4889980dabf1d29c7f"
integrity sha512-Y6OCoVQgFQBP5py6A/06+yWxUZHDlNr/gNDGatjH8AZqXl8X0tE4LfjLJsXGz/JmWJz8a6K7bR1k+QzZ+k//fg==
electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.571:
version "1.3.576"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.576.tgz#2e70234484e03d7c7e90310d7d79fd3775379c34"
integrity sha512-uSEI0XZ//5ic+0NdOqlxp0liCD44ck20OAGyLMSymIWTEAtHKVJi6JM18acOnRgUgX7Q65QqnI+sNncNvIy8ew==
element-resize-detector@^1.2.1:
version "1.2.1"
@ -5425,9 +5426,9 @@ entities@^2.0.0:
integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==
enzyme-adapter-react-16@^1.15.2:
version "1.15.4"
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.4.tgz#328a782365a363ecb424f99283c4833dd92c0f21"
integrity sha512-wPzxs+JaGDK2TPYzl5a9YWGce6i2SQ3Cg51ScLeyj2WotUZ8Obcq1ke/U1Y2VGpYlb9rrX2yCjzSMgtKCeAt5w==
version "1.15.5"
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.5.tgz#7a6f0093d3edd2f7025b36e7fbf290695473ee04"
integrity sha512-33yUJGT1nHFQlbVI5qdo5Pfqvu/h4qPwi1o0a6ZZsjpiqq92a3HjynDhwd1IeED+Su60HDWV8mxJqkTnLYdGkw==
dependencies:
enzyme-adapter-utils "^1.13.1"
enzyme-shallow-equal "^1.0.4"
@ -5468,10 +5469,11 @@ enzyme-shallow-equal@^1.0.1, enzyme-shallow-equal@^1.0.4:
object-is "^1.1.2"
enzyme-to-json@^3.3.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.5.0.tgz#3d536f1e8fb50d972360014fe2bd64e6a672f7dd"
integrity sha512-clusXRsiaQhG7+wtyc4t7MU8N3zCOgf4eY9+CeSenYzKlFST4lxerfOvnWd4SNaToKhkuba+w6m242YpQOS7eA==
version "3.6.1"
resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.6.1.tgz#d60740950bc7ca6384dfe6fe405494ec5df996bc"
integrity sha512-15tXuONeq5ORoZjV/bUo2gbtZrN2IH+Z6DvL35QmZyKHgbY1ahn6wcnLd9Xv9OjiwbAXiiP8MRZwbZrCv1wYNg==
dependencies:
"@types/cheerio" "^0.22.22"
lodash "^4.17.15"
react-is "^16.12.0"
@ -5518,37 +5520,37 @@ error-ex@^1.3.1:
is-arrayish "^0.2.1"
es-abstract@^1.17.0, es-abstract@^1.17.0-next.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.17.5:
version "1.17.6"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a"
integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==
version "1.17.7"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c"
integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-regex "^1.1.0"
object-inspect "^1.7.0"
is-callable "^1.2.2"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
es-abstract@^1.18.0-next.0:
version "1.18.0-next.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.0.tgz#b302834927e624d8e5837ed48224291f2c66e6fc"
integrity sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==
es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1:
version "1.18.0-next.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68"
integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==
dependencies:
es-to-primitive "^1.2.1"
function-bind "^1.1.1"
has "^1.0.3"
has-symbols "^1.0.1"
is-callable "^1.2.0"
is-callable "^1.2.2"
is-negative-zero "^2.0.0"
is-regex "^1.1.1"
object-inspect "^1.8.0"
object-keys "^1.1.1"
object.assign "^4.1.0"
object.assign "^4.1.1"
string.prototype.trimend "^1.0.1"
string.prototype.trimstart "^1.0.1"
@ -5625,9 +5627,9 @@ escodegen@^1.9.1:
source-map "~0.6.1"
eslint-plugin-react@^7.17.0:
version "7.20.6"
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.6.tgz#4d7845311a93c463493ccfa0a19c9c5d0fd69f60"
integrity sha512-kidMTE5HAEBSLu23CUDvj8dc3LdBU0ri1scwHBZjI41oDv4tjsWZKU7MQccFzH1QYPYhsnTF2ovh7JlcIcmxgg==
version "7.21.3"
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.21.3.tgz#71655d2af5155b19285ec929dd2cdc67a4470b52"
integrity sha512-OI4GwTCqyIb4ipaOEGLWdaOHCXZZydStAsBEPB2e1ZfNM37bojpgO1BoOQbFb0eLVz3QLDx7b+6kYcrxCuJfhw==
dependencies:
array-includes "^3.1.1"
array.prototype.flatmap "^1.2.3"
@ -6760,19 +6762,19 @@ html-minifier@^3.5.8:
uglify-js "3.4.x"
html-to-react@^1.4.2:
version "1.4.3"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.3.tgz#1430a1cb581ef29533892ec70a2fdc4554b17ffd"
integrity sha512-txe09A3vxW8yEZGJXJ1is5gGDfBEVACmZDSgwDyH5EsfRdOubBwBCg63ZThZP0xBn0UE4FyvMXZXmohusCxDcg==
version "1.4.4"
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.4.tgz#dd5edb76ff28ab7fc34faabd91446bece292dc38"
integrity sha512-oE4GYH8c/gvFQwfNHBhg1LpfiPsQRKj0JQmvccvUHqyyF7U1H7UzZ7Z6CyF7okv1QFukyvjH9aAApNa4kYSO9g==
dependencies:
domhandler "^3.0"
htmlparser2 "^4.1.0"
domhandler "^3.3.0"
htmlparser2 "^5.0"
lodash.camelcase "^4.3.0"
ramda "^0.27"
ramda "^0.27.1"
html-webpack-plugin@^4.0.0-beta.2:
version "4.4.1"
resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.4.1.tgz#61ab85aa1a84ba181443345ebaead51abbb84149"
integrity sha512-nEtdEIsIGXdXGG7MjTTZlmhqhpHU9pJFc1OYxcP36c5/ZKP6b0BJMww2QTvJGQYA9aMxUnjDujpZdYcVOXiBCQ==
version "4.5.0"
resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz#625097650886b97ea5dae331c320e3238f6c121c"
integrity sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw==
dependencies:
"@types/html-minifier-terser" "^5.0.0"
"@types/tapable" "^1.0.5"
@ -6796,14 +6798,14 @@ htmlparser2@^3.3.0, htmlparser2@^3.9.1:
inherits "^2.0.1"
readable-stream "^3.1.1"
htmlparser2@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78"
integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==
htmlparser2@^5.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.0.tgz#78454bc782599291d9fefd7b48ef2058dc62eb89"
integrity sha512-/Cvz5RTj9q71kCL9No1u2jhFaAdoMtxpNy0YTwjmQB3iX2TZXfCojTm7tp3rM4NxcwaX1iAzvNgo8OFectXmrQ==
dependencies:
domelementtype "^2.0.1"
domhandler "^3.0.0"
domutils "^2.0.0"
domhandler "^3.3.0"
domutils "^2.4.2"
entities "^2.0.0"
http-errors@1.7.2:
@ -7141,10 +7143,10 @@ is-buffer@^1.0.2, is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.1.tgz#4d1e21a4f437509d25ce55f8184350771421c96d"
integrity sha512-wliAfSzx6V+6WfMOmus1xy0XvSgf/dlStkvTfq7F0g4bOIW0PSUbnyse3NhDwdyYS1ozfUtAAySqTws3z9Eqgg==
is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
is-ci@^2.0.0:
version "2.0.0"
@ -7942,12 +7944,12 @@ jest@^24.9.0:
import-local "^2.0.0"
jest-cli "^24.9.0"
js-cleanup@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/js-cleanup/-/js-cleanup-1.0.1.tgz#1d38080c7ee92e1d2d2b94054d0a33c48951e0df"
integrity sha512-wyHeWKqbcQV78/tiMJ6pgJrkG7p2u3b2xX9IJFvvurpJL9/++89dHfkUebhWvSMS84LG0uQ7BnG5GGyAzY21Ag==
js-cleanup@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/js-cleanup/-/js-cleanup-1.2.0.tgz#8dbc65954b1d38b255f1e8cf02cd17b3f7a053f9"
integrity sha512-JeDD0yiiSt80fXzAVa/crrS0JDPQljyBG/RpOtaSbyDq03VHa9szJWMaWOYU/bcTn412uMN2MxApXq8v79cUiQ==
dependencies:
magic-string "^0.25.1"
magic-string "^0.25.7"
perf-regexes "^1.0.1"
skip-regex "^1.0.2"
@ -8418,7 +8420,7 @@ lru-cache@^5.1.1:
dependencies:
yallist "^3.0.2"
magic-string@^0.25.1, magic-string@^0.25.2:
magic-string@^0.25.2, magic-string@^0.25.7:
version "0.25.7"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
@ -8465,9 +8467,9 @@ map-visit@^1.0.0:
object-visit "^1.0.0"
markdown-loader@^5.0.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-5.1.0.tgz#4efd5006b1514ca966141c661a47e542a9836e6e"
integrity sha512-xtQNozLEL+55ZSPTNwro8epZqf1h7HjAZd/69zNe8lbckDiGVHeLQm849bXzocln2pwRK2A/GrW/7MAmwjcFog==
version "5.2.0"
resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-5.2.0.tgz#814535790e76b7d861fcf37a16ab03945a64bbc7"
integrity sha512-+vAtBlMdmMY3ERSOUIIek/DwCv939nHvoYISUwwTC7q+caVlQmf7KhhMozbfAcgL/7njGjWxhMgI7nLaz9+KRQ==
dependencies:
loader-utils "^1.2.3"
marked "^0.7.0"
@ -8755,9 +8757,9 @@ mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1:
minimist "^1.2.5"
moment@^2.24.0:
version "2.28.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.28.0.tgz#cdfe73ce01327cee6537b0fafac2e0f21a237d75"
integrity sha512-Z5KOjYmnHyd/ukynmFd/WwyXHd7L4J9vTI/nn5Ap9AVUgaAE15VvQ9MOGmJJygEUklupqIrFnor/tjTwRU+tQw==
version "2.29.0"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.0.tgz#fcbef955844d91deb55438613ddcec56e86a3425"
integrity sha512-z6IJ5HXYiuxvFTI6eiQ9dm77uE0gyy1yXNApVHqTcnIKfY9tIwEjlzsZ6u1LQXvVgKeTnv9Xm7NDvJ7lso3MtA==
moo@^0.5.0:
version "0.5.1"
@ -8829,9 +8831,9 @@ natural-compare@^1.4.0:
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
nearley@^2.7.10:
version "2.19.6"
resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.6.tgz#22663fd7326eb708b4c18bfdd7e4ce204b7239b0"
integrity sha512-OV3Lx+o5iIGWVY38zs+7aiSnBqaHTFAOQiz83VHJje/wOOaSgzE3H0S/xfISxJhFSoPcX611OEDV9sCT8F283g==
version "2.19.7"
resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.19.7.tgz#eafbe3e2d8ccfe70adaa5c026ab1f9709c116218"
integrity sha512-Y+KNwhBPcSJKeyQCFjn8B/MIe+DDlhaaDgjVldhy5xtFewIbiQgcbZV8k2gCVwkI1ZsKCnjIYZbR+0Fim5QYgg==
dependencies:
commander "^2.19.0"
moo "^0.5.0"
@ -9049,12 +9051,12 @@ object-inspect@^1.7.0, object-inspect@^1.8.0:
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
object-is@^1.0.1, object-is@^1.0.2, object-is@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6"
integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==
version "1.1.3"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
dependencies:
define-properties "^1.1.3"
es-abstract "^1.17.5"
es-abstract "^1.18.0-next.1"
object-keys@^1.0.12, object-keys@^1.1.1:
version "1.1.1"
@ -9068,7 +9070,7 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
object.assign@^4.1.0:
object.assign@^4.1.0, object.assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd"
integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==
@ -9158,9 +9160,9 @@ open@^6.3.0:
is-wsl "^1.1.0"
open@^7.0.0:
version "7.2.1"
resolved "https://registry.yarnpkg.com/open/-/open-7.2.1.tgz#07b0ade11a43f2a8ce718480bdf3d7563a095195"
integrity sha512-xbYCJib4spUdmcs0g/2mK1nKo/jO2T7INClWd/beL7PFkXRWgr8B23ssDHX/USPn2M2IjDR5UdpYs6I67SnTSA==
version "7.3.0"
resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
dependencies:
is-docker "^2.0.0"
is-wsl "^2.1.1"
@ -9524,9 +9526,9 @@ pnp-webpack-plugin@1.5.0:
ts-pnp "^1.1.2"
polished@^3.3.1:
version "3.6.6"
resolved "https://registry.yarnpkg.com/polished/-/polished-3.6.6.tgz#91ef9eface9be5366c07672b63b736f50c151185"
integrity sha512-yiB2ims2DZPem0kCD6V0wnhcVGFEhNh0Iw0axNpKU+oSAgFt6yx6HxIT23Qg0WWvgS379cS35zT4AOyZZRzpQQ==
version "3.6.7"
resolved "https://registry.yarnpkg.com/polished/-/polished-3.6.7.tgz#44cbd0047f3187d83db0c479ef0c7d5583af5fb6"
integrity sha512-b4OViUOihwV0icb9PHmWbR+vPqaSzSAEbgLskvb7ANPATVXGiYv/TQFHQo65S53WU9i5EQ1I03YDOJW7K0bmYg==
dependencies:
"@babel/runtime" "^7.9.2"
@ -9541,9 +9543,9 @@ posix-character-classes@^0.1.0:
integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
postcss-calc@^7.0.1:
version "7.0.4"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz#5e177ddb417341e6d4a193c5d9fd8ada79094f8b"
integrity sha512-0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==
version "7.0.5"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e"
integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==
dependencies:
postcss "^7.0.27"
postcss-selector-parser "^6.0.2"
@ -9604,9 +9606,9 @@ postcss-flexbugs-fixes@^4.1.0:
postcss "^7.0.26"
postcss-load-config@^2.0.0, postcss-load-config@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.1.tgz#0a684bb8beb05e55baf922f7ab44c3edb17cf78e"
integrity sha512-D2ENobdoZsW0+BHy4x1CAkXtbXtYWYRIxL/JbtRBqrRGOPtJ2zoga/bEZWhV/ShWB5saVxJMzbMdSyA/vv4tXw==
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a"
integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==
dependencies:
cosmiconfig "^5.0.0"
import-cwd "^2.0.0"
@ -9878,13 +9880,14 @@ postcss-selector-parser@^3.0.0:
uniq "^1.0.1"
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
version "6.0.4"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3"
integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss-svgo@^4.0.2:
version "4.0.2"
@ -9934,9 +9937,9 @@ postcss@^6.0.1:
supports-color "^5.4.0"
postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
version "7.0.34"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20"
integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw==
version "7.0.35"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
dependencies:
chalk "^2.4.2"
source-map "^0.6.1"
@ -9991,11 +9994,11 @@ pretty-format@^25.1.0:
react-is "^16.12.0"
pretty-format@^26.4.2:
version "26.4.2"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.4.2.tgz#d081d032b398e801e2012af2df1214ef75a81237"
integrity sha512-zK6Gd8zDsEiVydOCGLkoBoZuqv8VTiHyAbKznXe/gaph/DAeZOmit9yMfgIz5adIgAMMs5XfoYSwAX3jcCO1tA==
version "26.5.0"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.5.0.tgz#3320e4952f8e6918fc8c26c6df7aad9734818ac2"
integrity sha512-NcgRuuTutUJ9+Br4P19DFThpJYnYBiugfRmZEA6pXrUeG+IcMSmppb88rU+iPA+XAJcjTYlCb5Ed6miHg/Qqqw==
dependencies:
"@jest/types" "^26.3.0"
"@jest/types" "^26.5.0"
ansi-regex "^5.0.0"
ansi-styles "^4.0.0"
react-is "^16.12.0"
@ -10237,7 +10240,7 @@ ramda@^0.21.0:
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=
ramda@^0.27:
ramda@^0.27.1:
version "0.27.1"
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
@ -11077,12 +11080,12 @@ rollup-plugin-babel@^4.3.3:
rollup-pluginutils "^2.8.1"
rollup-plugin-cleanup@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/rollup-plugin-cleanup/-/rollup-plugin-cleanup-3.1.1.tgz#d012faab5e212b1c4bfa8144ace70fc6ac7b3315"
integrity sha512-wMS9JQm4ShvlMqno1pOfqvh0yYgNLO2ZgmzDsVvKuDt4XCn+9DcMoUwRQ5t9p9b113dR5FhPFFUHnvvQ/yuEtA==
version "3.2.1"
resolved "https://registry.yarnpkg.com/rollup-plugin-cleanup/-/rollup-plugin-cleanup-3.2.1.tgz#8cbc92ecf58babd7c210051929797f137bbf777c"
integrity sha512-zuv8EhoO3TpnrU8MX8W7YxSbO4gmOR0ny06Lm3nkFfq0IVKdBUtHwhVzY1OAJyNCIAdLiyPnOrU0KnO0Fri1GQ==
dependencies:
js-cleanup "^1.0.1"
rollup-pluginutils "^2.3.3"
js-cleanup "^1.2.0"
rollup-pluginutils "^2.8.2"
rollup-plugin-commonjs@^10.1.0:
version "10.1.0"
@ -11173,7 +11176,7 @@ rollup-plugin-url@^3.0.1:
mime "^2.4.4"
rollup-pluginutils "^2.8.2"
rollup-pluginutils@^2.3.3, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1, rollup-pluginutils@^2.8.2:
rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1, rollup-pluginutils@^2.8.2:
version "2.8.2"
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==
@ -11987,12 +11990,12 @@ style-inject@^0.3.0:
integrity sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw==
style-loader@^1.0.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.2.1.tgz#c5cbbfbf1170d076cfdd86e0109c5bba114baa1a"
integrity sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==
version "1.3.0"
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e"
integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==
dependencies:
loader-utils "^2.0.0"
schema-utils "^2.6.6"
schema-utils "^2.7.0"
styled-components@^5.0.0:
version "5.2.0"
@ -12245,9 +12248,9 @@ tiny-emitter@^2.0.0:
integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==
tinycolor2@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8"
integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=
version "1.4.2"
resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803"
integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==
tmp@^0.0.33:
version "0.0.33"
@ -12348,9 +12351,9 @@ tr46@^1.0.1:
punycode "^2.1.0"
ts-dedent@^1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.1.1.tgz#68fad040d7dbd53a90f545b450702340e17d18f3"
integrity sha512-UGTRZu1evMw4uTPyYF66/KFd22XiU+jMaIuHrkIHQ2GivAXVlLV0v/vHrpOuTRf9BmpNHi/SO7Vd0rLu0y57jg==
version "1.2.0"
resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.2.0.tgz#6aa2229d837159bb6d635b6b233002423b91e0b0"
integrity sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==
ts-pnp@^1.1.2:
version "1.2.0"
@ -12438,9 +12441,9 @@ uglify-js@3.4.x:
source-map "~0.6.1"
unfetch@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.1.0.tgz#6ec2dd0de887e58a4dee83a050ded80ffc4137db"
integrity sha512-crP/n3eAPUJxZXM9T80/yv0YhkTEx2K1D3h7D1AJM6fzsWZrxdyRuLN0JH/dkZh1LNH8LxCnBzoPFCPbb2iGpg==
version "4.2.0"
resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be"
integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==
unicode-canonical-property-names-ecmascript@^1.0.4:
version "1.0.4"