diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.html b/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.html
deleted file mode 100644
index 4f19fccc60..0000000000
--- a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.html
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.scss b/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.scss
deleted file mode 100644
index 209365d846..0000000000
--- a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.scss
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Copyright © 2016-2023 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 {
- width: 100%;
- height: 100%;
-
- .action-buttons-container {
- display: flex;
- flex-wrap: wrap;
- flex-direction: row;
- height: 100%;
- width: 100%;
-
- button {
- flex-grow: 1;
- margin: 10px;
- min-width: 150px;
- height: auto;
- }
- }
-}
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.ts b/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.ts
deleted file mode 100644
index 7c0de7c91d..0000000000
--- a/ui-ngx/src/app/modules/home/components/widget/lib/action-buttons.component.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-///
-/// Copyright © 2016-2023 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.
-///
-
-import { Component, Input, OnInit } from '@angular/core';
-import { WidgetContext } from '@home/models/widget-component.models';
-import { Store } from '@ngrx/store';
-import { AppState } from '@core/core.state';
-import { WidgetActionDescriptor } from '@shared/models/widget.models';
-import { PageComponent } from '@shared/components/page.component';
-import { ThemePalette } from '@angular/material/core';
-
-
-interface ActionButtonsWidgetSettings {
- buttonsType: string,
- buttonsClass: ThemePalette,
- alignment: string
-}
-
-@Component({
- selector: 'tb-action-buttons-widget',
- templateUrl: './action-buttons.component.html',
- styleUrls: ['./action-buttons.component.scss']
-})
-export class ActionButtonsComponent implements OnInit {
-
- @Input()
- ctx: WidgetContext;
-
- settings: ActionButtonsWidgetSettings;
-
- constructor() {
- }
-
- ngOnInit(): void {
- this.settings = this.ctx.settings;
- }
-
- actionButtonClick($event: MouseEvent, actionDescriptor: WidgetActionDescriptor) {
- let entityId, entityName, entityLabel;
- if (this.ctx.datasources) {
- entityId = this.ctx.datasources[0].entity.id;
- entityName = this.ctx.datasources[0].entityName;
- entityLabel = this.ctx.datasources[0].entityLabel;
- }
- this.ctx.actionsApi.handleWidgetAction($event, actionDescriptor, entityId, entityName, null, entityLabel);
- }
-
-}
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.html b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.html
deleted file mode 100644
index 0cb70d331c..0000000000
--- a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.html
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.ts
deleted file mode 100644
index bc14843b0b..0000000000
--- a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/action-buttons-widget-settings.component.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-///
-/// Copyright © 2016-2023 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.
-///
-
-import { Component } from '@angular/core';
-import { WidgetSettings, WidgetSettingsComponent } from '@shared/models/widget.models';
-import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
-import { Store } from '@ngrx/store';
-import { AppState } from '@core/core.state';
-
-@Component({
- selector: 'tb-action-buttons-widget-settings',
- templateUrl: './action-buttons-widget-settings.component.html',
- styleUrls: ['./../widget-settings.scss']
-})
-export class ActionButtonsWidgetSettingsComponent extends WidgetSettingsComponent {
-
- ActionButtonsSettingsForm: UntypedFormGroup;
-
- buttonTypes = ['basic', 'raised', 'stroked', 'flat'];
-
- buttonClasses = ['basic', 'primary', 'accent', 'warn'];
-
- alignment = ['center', 'start', 'end', 'normal', 'baseline', 'space-between', 'space-around', 'stretch'];
-
- constructor(protected store: Store,
- private fb: UntypedFormBuilder) {
- super(store);
- }
-
- protected settingsForm(): UntypedFormGroup {
- return this.ActionButtonsSettingsForm;
- }
-
- protected defaultSettings(): WidgetSettings {
- return {
- buttonsType: 'basic',
- buttonsClass: 'basic',
- alignment: 'center'
- };
- }
-
- protected onSettingsSet(settings: WidgetSettings) {
- this.ActionButtonsSettingsForm = this.fb.group({
- buttonsType: [settings.buttonsType, []],
- buttonsClass: [settings.buttonsClass, []],
- alignment: [settings.alignment, []]
- });
- }
-}
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts
index 6ba665cf23..78793e6771 100644
--- a/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts
+++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts
@@ -259,9 +259,6 @@ import {
import {
TripAnimationPointSettingsComponent
} from '@home/components/widget/lib/settings/map/trip-animation-point-settings.component';
-import {
- ActionButtonsWidgetSettingsComponent
-} from '@home/components/widget/lib/settings/cards/action-buttons-widget-settings.component';
import {
GatewayLogsSettingsComponent
} from '@home/components/widget/lib/settings/gateway/gateway-logs-settings.component';
@@ -368,7 +365,6 @@ import {
MapWidgetSettingsComponent,
RouteMapWidgetSettingsComponent,
TripAnimationWidgetSettingsComponent,
- ActionButtonsWidgetSettingsComponent,
GatewayLogsSettingsComponent,
GatewayServiceRPCSettingsComponent
],
@@ -474,7 +470,6 @@ import {
MapWidgetSettingsComponent,
RouteMapWidgetSettingsComponent,
TripAnimationWidgetSettingsComponent,
- ActionButtonsWidgetSettingsComponent,
GatewayLogsSettingsComponent,
GatewayServiceRPCSettingsComponent
]
@@ -544,7 +539,6 @@ export const widgetSettingsComponentsMap: {[key: string]: Type
gateway.statistics.send-period
-
+
{{'gateway.statistics.send-period-required' | translate }}
diff --git a/ui-ngx/src/app/shared/components/device/gateway-configuration.component.ts b/ui-ngx/src/app/shared/components/device/gateway-configuration.component.ts
index 7b51e9c314..828d577855 100644
--- a/ui-ngx/src/app/shared/components/device/gateway-configuration.component.ts
+++ b/ui-ngx/src/app/shared/components/device/gateway-configuration.component.ts
@@ -100,8 +100,8 @@ export const securityTypesTranslationsMap = new Map(
[
[SecurityTypes.ACCESS_TOKEN, 'gateway.security-types.access-token'],
[SecurityTypes.USERNAME_PASSWORD, 'gateway.security-types.username-password'],
- // [SecurityTypes.TLS_ACCESS_TOKEN, 'gateway.security-types.tls-access-token'],
- [SecurityTypes.TLS_PRIVATE_KEY, 'gateway.security-types.tls-private-key'],
+ [SecurityTypes.TLS_ACCESS_TOKEN, 'gateway.security-types.tls-access-token'],
+ // [SecurityTypes.TLS_PRIVATE_KEY, 'gateway.security-types.tls-private-key'],
]
);
@@ -152,7 +152,7 @@ export class GatewayConfigurationComponent implements OnInit {
checkConnectorsConfigurationInSeconds: [60, [Validators.required, Validators.min(1), Validators.pattern(/^-?[0-9]+$/)]],
statistics: this.fb.group({
enable: [true, []],
- statsSendPeriodInSeconds: [3600, [Validators.required, Validators.min(0), Validators.pattern(/^-?[0-9]+$/)]],
+ statsSendPeriodInSeconds: [3600, [Validators.required, Validators.min(1), Validators.pattern(/^-?[0-9]+$/)]],
commands: this.fb.array([], [])
}),
maxPayloadSizeBytes: [1024, [Validators.required, Validators.min(1), Validators.pattern(/^-?[0-9]+$/)]],
diff --git a/ui-ngx/src/app/shared/components/device/gateway-service-rpc.component.html b/ui-ngx/src/app/shared/components/device/gateway-service-rpc.component.html
index 158b03c3e0..840ca86d6d 100644
--- a/ui-ngx/src/app/shared/components/device/gateway-service-rpc.component.html
+++ b/ui-ngx/src/app/shared/components/device/gateway-service-rpc.component.html
@@ -17,7 +17,7 @@
-->
- Command
+ {{'gateway.statistics.command' | translate}}
{{command}}
@@ -26,11 +26,11 @@
- Time
+ {{'gateway.statistics.timeout-ms' | translate}}
- Parameters
+ {{'widget-config.datasource-parameters' | translate}}
- Statistic
+ {{'gateway.statistics.statistic' | translate}}
{{key}}
@@ -29,12 +29,12 @@
+
+
+
+
- Timeout
-
-
-
- Command
+ {{'gateway.statistics.command' | translate}}
diff --git a/ui-ngx/src/assets/locale/locale.constant-en_US.json b/ui-ngx/src/assets/locale/locale.constant-en_US.json
index 69261c8fac..cb5e9f3392 100644
--- a/ui-ngx/src/assets/locale/locale.constant-en_US.json
+++ b/ui-ngx/src/assets/locale/locale.constant-en_US.json
@@ -2608,9 +2608,10 @@
"server-port": "Server port",
"stats-send-period-in-sec": "Stats send period in seconds",
"statistics": {
+ "statistic": "Statistic",
"statistics": "Statistics",
"commands": "Commands",
- "send-period": "Statistic send period (in ms)",
+ "send-period": "Statistic send period (in sec)",
"send-period-required": "Statistic send period is required",
"send-period-min": "Statistic send period can not be less then 1",
"send-period-pattern": "Statistic send period is not valid",
@@ -2620,6 +2621,7 @@
"check-connectors-configuration-pattern": "Check connectors configuration is not valid",
"add": "Add command",
"timeout": "Timeout",
+ "timeout-ms": "Timeout (in ms)",
"timeout-required": "Timeout is required",
"timeout-min": "Timeout can not be less then 1",
"timeout-pattern": "Timeout is not valid",
@@ -2685,7 +2687,7 @@
"messages-ttl-in-days-pattern": "Number is not valid.",
"mqtt-qos": "QoS",
"mqtt-qos-required": "QoS is required",
- "mqtt-qos-range": "QoS values range is from 0 to 2",
+ "mqtt-qos-range": "QoS values range is from 0 to 1",
"tls-path-private-key": "Path to private key on gateway",
"toggle-fullscreen": "Toggle fullscreen",
"transformer-json-config": "Configuration JSON*",
@@ -2726,7 +2728,7 @@
"check-device-activity": "Enables monitor the activity of each connected device",
"inactivity-timeout": "Inactivity device time after whose the gateway will disconnect device",
"inactivity-period": "Periodicity of device activity check",
- "minimal-pack-delay": "Delay between sending packets (Decreasing this setting results in increased CPU usage",
+ "minimal-pack-delay": "Delay between sending packets (Decreasing this setting results in increased CPU usage)",
"qos": "Quality of Service in MQTT messaging (0 - at most once, 1 - at least once)"
}
},