diff --git a/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.scss b/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.scss
new file mode 100644
index 0000000000..d6ad9f6a37
--- /dev/null
+++ b/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.scss
@@ -0,0 +1,55 @@
+/**
+ * Copyright © 2016-2022 The Thingsboard Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+:host {
+ .fields-element {
+ padding-top: 15px;
+ }
+
+ .group-title > span {
+ color: rgba(0, 0, 0, 0.54);
+ }
+
+ ::ng-deep {
+ .mat-expansion-panel {
+ &.configuration-panel {
+ box-shadow: none;
+
+ .mat-expansion-panel-header {
+ padding: 0;
+
+ &:hover {
+ background: none !important;
+ }
+
+ .mat-expansion-indicator {
+ padding: 2px;
+ }
+ }
+
+ > .mat-expansion-panel-content {
+ > .mat-expansion-panel-body {
+ padding: 0;
+ }
+ }
+
+ .mat-expansion-panel-header-description {
+ align-items: center;
+ }
+ }
+ }
+ }
+}
diff --git a/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.ts b/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.ts
index 2f922faaac..65f030a3a6 100644
--- a/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.ts
+++ b/ui-ngx/src/app/modules/home/components/profile/tenant/default-tenant-profile-configuration.component.ts
@@ -25,7 +25,7 @@ import { isDefinedAndNotNull } from '@core/utils';
@Component({
selector: 'tb-default-tenant-profile-configuration',
templateUrl: './default-tenant-profile-configuration.component.html',
- styleUrls: [],
+ styleUrls: ['./default-tenant-profile-configuration.component.scss'],
providers: [{
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef(() => DefaultTenantProfileConfigurationComponent),
@@ -35,7 +35,7 @@ import { isDefinedAndNotNull } from '@core/utils';
export class DefaultTenantProfileConfigurationComponent implements ControlValueAccessor, OnInit {
defaultTenantProfileConfigurationFormGroup: FormGroup;
- rateLimitsPattern = '^(((\\d+):(\\d+)),)*((\\d+):(\\d+))$';
+ rateLimitsPattern = '([1-9]\\d*:[1-9]\\d*)(,[1-9]\\d*:[1-9]\\d*)*';
private requiredValue: boolean;
get required(): boolean {
diff --git a/ui-ngx/src/app/modules/home/components/queue/queue-form.component.html b/ui-ngx/src/app/modules/home/components/queue/queue-form.component.html
index fce4a9e499..6c34e0111f 100644
--- a/ui-ngx/src/app/modules/home/components/queue/queue-form.component.html
+++ b/ui-ngx/src/app/modules/home/components/queue/queue-form.component.html
@@ -17,7 +17,7 @@
-->