2025-01-07 19:07:33 +02:00
|
|
|
<!--
|
|
|
|
|
|
|
|
|
|
Copyright © 2016-2024 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.
|
|
|
|
|
|
|
|
|
|
-->
|
|
|
|
|
<section [formGroup]="sqsConfigForm" class="flex flex-col">
|
|
|
|
|
<mat-form-field class="mat-block">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.queue-type</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<mat-select formControlName="queueType" required>
|
|
|
|
|
<mat-option *ngFor="let type of sqsQueueTypes" [value]="type">
|
|
|
|
|
{{ sqsQueueTypeTranslationsMap.get(type) | translate }}
|
|
|
|
|
</mat-option>
|
|
|
|
|
</mat-select>
|
|
|
|
|
</mat-form-field>
|
|
|
|
|
<mat-form-field class="mat-block" subscriptSizing="dynamic">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.queue-url-pattern</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<input required matInput formControlName="queueUrlPattern">
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('queueUrlPattern').hasError('required')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.queue-url-pattern-required' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-hint translate>rule-node-config.general-pattern-hint</mat-hint>
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-form-field>
|
|
|
|
|
<mat-form-field *ngIf="sqsConfigForm.get('queueType').value === sqsQueueType.STANDARD" class="mat-block">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.delay-seconds</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<input required type="number" min="0" max="900" step="1" matInput formControlName="delaySeconds">
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('delaySeconds').hasError('min')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.min-delay-seconds-message' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('delaySeconds').hasError('max')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.max-delay-seconds-message' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
|
|
|
|
</mat-form-field>
|
2025-01-14 10:48:07 +02:00
|
|
|
<label translate class="tb-title">rule-node-config.message-attributes</label>
|
|
|
|
|
<div class="tb-hint" [innerHTML]="'rule-node-config.message-attributes-hint' | translate | safe: 'html'"></div>
|
2025-01-07 19:07:33 +02:00
|
|
|
<tb-kv-map-config-old
|
|
|
|
|
required="false"
|
|
|
|
|
formControlName="messageAttributes"
|
2025-01-14 10:48:07 +02:00
|
|
|
keyText="rule-node-config.name"
|
|
|
|
|
keyRequiredText="rule-node-config.name-required"
|
|
|
|
|
valText="rule-node-config.value"
|
|
|
|
|
valRequiredText="rule-node-config.value-required">
|
2025-01-07 19:07:33 +02:00
|
|
|
</tb-kv-map-config-old>
|
|
|
|
|
<mat-form-field class="mat-block">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.aws-access-key-id</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<input required matInput formControlName="accessKeyId">
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('accessKeyId').hasError('required')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.aws-access-key-id-required' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
|
|
|
|
</mat-form-field>
|
|
|
|
|
<mat-form-field class="mat-block">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.aws-secret-access-key</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<input required matInput formControlName="secretAccessKey">
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('secretAccessKey').hasError('required')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.aws-secret-access-key-required' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
|
|
|
|
</mat-form-field>
|
|
|
|
|
<mat-form-field class="mat-block">
|
2025-01-14 10:48:07 +02:00
|
|
|
<mat-label translate>rule-node-config.aws-region</mat-label>
|
2025-01-07 19:07:33 +02:00
|
|
|
<input required matInput formControlName="region">
|
|
|
|
|
<mat-error *ngIf="sqsConfigForm.get('region').hasError('required')">
|
2025-01-14 10:48:07 +02:00
|
|
|
{{ 'rule-node-config.aws-region-required' | translate }}
|
2025-01-07 19:07:33 +02:00
|
|
|
</mat-error>
|
|
|
|
|
</mat-form-field>
|
|
|
|
|
</section>
|