@c8y/ng1-modules 1017.138.0 → 1017.139.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/aclManagement/views/permissionEditor.html +2 -2
- package/actilityProviderSettings/actilitySettings.html +8 -8
- package/administration-alarmMapping/views/index.html +13 -13
- package/administration-applications/appWizard/appWizardClone2Step.html +5 -4
- package/administration-applications/appWizard/appWizardExternalStep.html +6 -6
- package/administration-applications/appWizard/appWizardSmartAppStep.html +6 -3
- package/administration-applications/application-detail/application-detail.html +7 -2
- package/administration-applications/application-list-view/application-list-view.html +9 -7
- package/administration-applications/views/applicationAccessEditor.html +1 -1
- package/administration-archivesEditor/views/upload.html +4 -4
- package/administration-eventProcessing/list/eventProcessingRulesList.html +4 -1
- package/administration-retentionRules/views/list.html +6 -6
- package/administration-storageLimitEmail/views/storageLimitForm.html +3 -2
- package/alarms/widget-config.html +11 -9
- package/app-status/app-instances/app-instances.html +4 -3
- package/app-status/app-status/app-status.html +16 -25
- package/app-status/app-tenant-subscriptions-list/app-tenant-subscriptions-list.html +7 -5
- package/assetTable/views/addOperation.html +10 -6
- package/assetTable/views/assets.html +11 -4
- package/assetTable/views/assets2.html +1 -1
- package/assetTable/views/rendererButton.html +2 -2
- package/binaryArtefactsManagement/views/list.html +1 -1
- package/configurationRepository/views/list.html +15 -13
- package/connectivityV2/sms.html +2 -2
- package/connectivityV2/status.html +14 -12
- package/core/ui/configurable-device-list-columns/modal-columns-configure.component.html +14 -14
- package/core/ui/filteringSorting/filteredSortedList.html +2 -3
- package/core/ui/forms/search.html +9 -8
- package/core/ui/navigation/breadcrumbs.html +4 -3
- package/core/ui/navigation/navigator.html +2 -1
- package/core/ui/operations/operations-timeline.html +5 -3
- package/core/ui/properties/propertySelector.html +9 -8
- package/core/ui/properties/schemaPropertySelector.html +15 -13
- package/core/ui/realtime/realtime-switch.html +2 -2
- package/core/ui/roles/roles-matrix.html +6 -6
- package/core/ui/user/editUser.directive.html +53 -46
- package/core/ui/user/measurementUnitPreference.html +2 -2
- package/core/ui/views/alarmList.html +32 -27
- package/core/ui/views/auditList.html +8 -7
- package/core/ui/views/binaryInput.html +37 -27
- package/core/ui/views/coreLogin.html +24 -24
- package/core/ui/views/deviceStatusDisplay.html +13 -9
- package/core/ui/views/editRetentionRuleDirective.html +3 -3
- package/core/ui/views/filePicker.html +2 -2
- package/core/ui/views/loadmore.html +3 -3
- package/dataBroker/connectors/connectors.html +21 -18
- package/device-protocol-impact/impact-resource.html +10 -10
- package/device-protocol-lwm2m/lwm2mResource.html +5 -6
- package/device-protocol-lwm2m/lwm2mValidationRules/lwm2mValidationRule.html +9 -8
- package/device-protocol-opcua-v2/opcua-v2-create-step.html +7 -8
- package/deviceDatabase4/detail/discrete-inputs.html +9 -9
- package/deviceDatabase4/detail/discrete-outputs.html +7 -7
- package/deviceDatabase4/detail/holding-registers.html +6 -6
- package/deviceDatabase4/detail/input-registers.html +9 -8
- package/deviceDatabase4/detail/message-id-configuration.html +4 -4
- package/deviceDatabase4/modals/configure-discrete-io.html +19 -25
- package/deviceDatabase4/modals/configure-register.html +177 -67
- package/deviceDatabase4/modals/import-device-type.html +5 -5
- package/deviceDetailIdentity/views/identity.html +8 -8
- package/deviceGroupAssignment/groupAssignment.component.html +6 -6
- package/deviceStatusWidget/ownerStatus.html +10 -10
- package/deviceStatusWidget/requiredAvailabilityIntervalSetting.html +8 -8
- package/devicemanagement-aclManagement/views/index.html +10 -10
- package/devicemanagement-deviceNetwork/views/network.html +6 -6
- package/devicemanagement-location/views/index.html +21 -21
- package/devicemanagement-logViewer/views/index.html +34 -24
- package/enterpriseEdition/customBranding/brandingConfigurationForm.component.js +1 -1
- package/enterpriseEdition/customBranding/brandingConfigurationForm.html +13 -20
- package/export/views/detail.html +4 -3
- package/export/views/list.html +13 -13
- package/export/views/properties.html +7 -7
- package/generic-ui/generic-ui-inventory-property.html +13 -12
- package/generic-ui/generic-ui-operation-list-button.html +2 -2
- package/htmlWidget/views/config.html +6 -7
- package/kpi/views/edit.html +3 -3
- package/kpi/views/pieChart.html +6 -5
- package/measurements/views/iconBar.html +11 -7
- package/modbusConfiguration4/fieldbus-device-list.html +17 -14
- package/modbusWidget4/widget.html +4 -3
- package/modbusWidgets/views/widget.html +4 -4
- package/package.json +1 -1
- package/remoteAccess/remoteAccessEndpointCard/remoteAccessEndpointCard.component.js +1 -1
- package/remoteAccess/remoteAccessEndpointCard/remoteAccessEndpointCard.html +17 -10
- package/remoteAccess/remoteAccessEndpointModal/remoteAccessEndpointModal.html +31 -23
- package/roles/detail/roleDetailGlobal.html +8 -8
- package/roles/detail/roleDetailInventory.html +11 -11
- package/roles/detail/roleInventoryPermissionList.html +11 -14
- package/scada/views/componentConfig.html +5 -5
- package/simulators/detail/instructionList.html +22 -22
- package/simulators/detail/operationAddDialog.html +5 -4
- package/smartRestEditor/addTemplate/addTemplate.modal.html +8 -8
- package/smartRestEditor/requestEditor/requestEditor.html +20 -20
- package/smartRestEditor/responseEditor/responseEditor.html +11 -10
- package/smartRules/list/smartRulesList.html +13 -6
- package/smartRules/views/edit.html +9 -3
- package/smartRules/views/paramInputAlarmType.html +4 -4
- package/smartRules/views/paramInputEscalationSteps.html +6 -2
- package/smartRules/views/paramInputKpi.html +2 -2
- package/smartRules/views/paramInputOperation.html +2 -2
- package/tenantApplications/subscribed-applications/subscribed-applications.html +9 -8
- package/tenantApplications/views/index.html +5 -4
- package/tenantPolicies/retentionRule/retentionRuleRow.html +12 -9
- package/tenantPolicies/systemOptions/systemOptionsRow.html +2 -0
- package/tenantPolicies/tenantOptions/tenantOptionsRow.html +18 -14
- package/tenantPolicies/tenantPolicyDetail/tenantPolicyDetail.html +40 -29
- package/tenantPolicies/tenantPolicyDetail/tenantPolicyRow.html +3 -3
- package/trackerRegistration/views/index.html +2 -0
- package/trafficLightWidget/states-mapping.html +8 -8
- package/userRoles/inventoryRoleSelector/inventoryRoleSelector.html +10 -12
- package/userRoles/inventoryRolesTab/inventoryRolesTab.html +15 -15
- package/users/applicationAccess/applicationAccess.html +18 -17
- package/users/userDetailView/userDetailView.html +10 -10
- package/users/userList/userList.html +22 -17
- package/users/userRemovalModal/userRemovalModal.component.html +10 -10
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
<c8y-breadcrumbs-set>
|
|
2
|
-
<c8y-breadcrumbs-item
|
|
3
|
-
label="{{ 'Branding' | translate }}"
|
|
4
|
-
icon="cog"
|
|
5
|
-
></c8y-breadcrumbs-item>
|
|
2
|
+
<c8y-breadcrumbs-item label="{{ 'Branding' | translate }}" icon="cog"></c8y-breadcrumbs-item>
|
|
6
3
|
<c8y-breadcrumbs-item
|
|
7
4
|
label="{{ 'Enterprise tenant' | translate }}"
|
|
8
5
|
icon="cog"
|
|
9
6
|
></c8y-breadcrumbs-item>
|
|
10
|
-
<c8y-breadcrumbs-item
|
|
11
|
-
label="{{ 'Settings' | translate }}"
|
|
12
|
-
icon="cog"
|
|
13
|
-
></c8y-breadcrumbs-item>
|
|
7
|
+
<c8y-breadcrumbs-item label="{{ 'Settings' | translate }}" icon="cog"></c8y-breadcrumbs-item>
|
|
14
8
|
</c8y-breadcrumbs-set>
|
|
15
9
|
|
|
16
10
|
<c8y-ui-action-bar-set>
|
|
@@ -33,35 +27,34 @@
|
|
|
33
27
|
</button>
|
|
34
28
|
|
|
35
29
|
<button
|
|
36
|
-
ng-show="!vm.useMicroservice"
|
|
37
|
-
title="{{ 'Apply branding configuration' | translate }}"
|
|
38
|
-
type="button"
|
|
39
30
|
class="btn btn-link"
|
|
40
|
-
|
|
31
|
+
type="button"
|
|
32
|
+
title="{{ (wrapperform.$dirty ? vm.dirtyFormApplyTitle : vm.applyTitle) | translate }}"
|
|
41
33
|
ng-disabled="wrapperform.$dirty"
|
|
42
34
|
ng-click="vm.applyConfiguration()"
|
|
35
|
+
ng-show="!vm.useMicroservice"
|
|
43
36
|
>
|
|
44
37
|
<i c8y-icon="bolt"></i>
|
|
45
38
|
{{ 'Apply' | translate }}
|
|
46
39
|
</button>
|
|
47
40
|
|
|
48
41
|
<button
|
|
49
|
-
ng-show="!vm.useMicroservice"
|
|
50
|
-
title="{{ 'Remove applied branding' | translate }}"
|
|
51
|
-
type="button"
|
|
52
42
|
class="btn btn-link"
|
|
43
|
+
type="button"
|
|
44
|
+
title="{{ 'Remove applied branding' | translate }}"
|
|
53
45
|
ng-click="vm.removeAppliedBranding()"
|
|
46
|
+
ng-show="!vm.useMicroservice"
|
|
54
47
|
>
|
|
55
48
|
<i c8y-icon="undo"></i>
|
|
56
49
|
{{ 'Remove branding' | translate }}
|
|
57
50
|
</button>
|
|
58
51
|
|
|
59
52
|
<button
|
|
60
|
-
ng-show="vm.showPreview"
|
|
61
|
-
title="{{ 'Open branded apps preview' | translate }}"
|
|
62
|
-
type="button"
|
|
63
53
|
class="btn btn-link"
|
|
54
|
+
type="button"
|
|
55
|
+
title="{{ 'Open branded apps preview' | translate }}"
|
|
64
56
|
ng-click="vm.preview()"
|
|
57
|
+
ng-show="vm.showPreview"
|
|
65
58
|
>
|
|
66
59
|
<i c8y-icon="external-link"></i>
|
|
67
60
|
{{ 'Open preview' | translate }}
|
|
@@ -104,17 +97,17 @@
|
|
|
104
97
|
<div class="card-footer separator sticky-bottom">
|
|
105
98
|
<button
|
|
106
99
|
class="btn btn-default"
|
|
107
|
-
title="{{ 'Reset' | translate }}"
|
|
108
100
|
type="button"
|
|
101
|
+
title="{{ 'Reset' | translate }}"
|
|
109
102
|
ng-disabled="!wrapperform.$dirty"
|
|
110
103
|
ng-click="vm.resetForm(wrapperform)"
|
|
111
104
|
>
|
|
112
105
|
{{ 'Reset' | translate }}
|
|
113
106
|
</button>
|
|
114
107
|
<button
|
|
115
|
-
title="{{ 'Save' | translate }}"
|
|
116
108
|
class="btn btn-primary"
|
|
117
109
|
type="button"
|
|
110
|
+
title="{{ 'Save' | translate }}"
|
|
118
111
|
ng-click="vm.save()"
|
|
119
112
|
ng-disabled="!vm.canSave() || !wrapperform.$dirty"
|
|
120
113
|
ng-hide="vm.isLoading"
|
package/export/views/detail.html
CHANGED
|
@@ -158,6 +158,7 @@
|
|
|
158
158
|
{{ 'Fields' | translate }}
|
|
159
159
|
<button
|
|
160
160
|
class="btn-help btn-help--sm"
|
|
161
|
+
type="button"
|
|
161
162
|
aria-label="{{ 'Help' | translate }}"
|
|
162
163
|
uib-popover="{{
|
|
163
164
|
'You will receive a CSV/Excel file for each selected type of data via email.'
|
|
@@ -206,26 +207,26 @@
|
|
|
206
207
|
<div class="row">
|
|
207
208
|
<div class="col-md-8">
|
|
208
209
|
<button
|
|
210
|
+
class="btn btn-default"
|
|
209
211
|
type="button"
|
|
210
212
|
title="{{ 'Cancel' | translate }}"
|
|
211
|
-
class="btn btn-default"
|
|
212
213
|
ng-click="cancel()"
|
|
213
214
|
>
|
|
214
215
|
{{ 'Cancel' | translate }}
|
|
215
216
|
</button>
|
|
216
217
|
<button
|
|
218
|
+
class="btn btn-primary"
|
|
217
219
|
type="submit"
|
|
218
220
|
title="{{ 'Save' | translate }}"
|
|
219
|
-
class="btn btn-primary"
|
|
220
221
|
ng-click="saveStay()"
|
|
221
222
|
ng-disabled="exportForm.$invalid || exportForm.$pristine"
|
|
222
223
|
>
|
|
223
224
|
{{ 'Save' | translate }}
|
|
224
225
|
</button>
|
|
225
226
|
<button
|
|
227
|
+
class="btn btn-primary"
|
|
226
228
|
type="submit"
|
|
227
229
|
title="{{ 'Save and close' | translate }}"
|
|
228
|
-
class="btn btn-primary"
|
|
229
230
|
ng-click="saveClose()"
|
|
230
231
|
ng-disabled="exportForm.$invalid || exportForm.$pristine"
|
|
231
232
|
>
|
package/export/views/list.html
CHANGED
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
|
|
14
14
|
<c8y-ui-action-bar-set>
|
|
15
15
|
<button
|
|
16
|
-
title="{{ 'Export' | translate }}"
|
|
17
|
-
type="button"
|
|
18
16
|
class="btn btn-link"
|
|
17
|
+
type="button"
|
|
18
|
+
title="{{ 'Export' | translate }}"
|
|
19
19
|
ng-click="runExport()"
|
|
20
20
|
ng-disabled="!vm.hasEmail || vm.getSelectedConfigs().length === 0"
|
|
21
21
|
>
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
</button>
|
|
25
25
|
|
|
26
26
|
<button
|
|
27
|
-
title="{{ 'Add export' | translate }}"
|
|
28
|
-
type="button"
|
|
29
27
|
class="btn btn-link"
|
|
28
|
+
type="button"
|
|
29
|
+
title="{{ 'Add export' | translate }}"
|
|
30
30
|
data-ng-click="add()"
|
|
31
31
|
>
|
|
32
32
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -43,13 +43,13 @@
|
|
|
43
43
|
<div class="c8y-list__item__block">
|
|
44
44
|
<div class="c8y-list__item__check">
|
|
45
45
|
<button
|
|
46
|
+
class="btn-help btn-help--sm"
|
|
46
47
|
type="button"
|
|
48
|
+
aria-label="{{ 'Help' | translate }}"
|
|
47
49
|
uib-popover-html="'You will receive an email with the download links for the selected exports.' | translate"
|
|
48
50
|
popover-append-to-body="true"
|
|
49
51
|
popover-placement="right"
|
|
50
52
|
popover-trigger="'focus'"
|
|
51
|
-
class="btn-help btn-help--sm"
|
|
52
|
-
aria-label="{{ 'Help' | translate }}"
|
|
53
53
|
></button>
|
|
54
54
|
</div>
|
|
55
55
|
<div class="c8y-list__item__icon">
|
|
@@ -163,20 +163,20 @@
|
|
|
163
163
|
<div class="c8y-list__item__actions">
|
|
164
164
|
<div uib-dropdown is-open="menuOpen">
|
|
165
165
|
<button
|
|
166
|
-
title="{{ 'Actions' | translate }}"
|
|
167
|
-
type="button"
|
|
168
|
-
data-cy="Actions"
|
|
169
166
|
class="dropdown-toggle c8y-dropdown"
|
|
167
|
+
type="button"
|
|
168
|
+
title="{{ 'Actions' | translate }}"
|
|
170
169
|
uib-dropdown-toggle
|
|
171
170
|
aria-haspopup="true"
|
|
171
|
+
data-cy="Actions"
|
|
172
172
|
>
|
|
173
173
|
<i c8y-icon="ellipsis-v"></i>
|
|
174
174
|
</button>
|
|
175
175
|
<ul class="dropdown-menu dropdown-menu-right" uib-dropdown-menu>
|
|
176
176
|
<li>
|
|
177
177
|
<button
|
|
178
|
-
title="{{ 'Edit' | translate }}"
|
|
179
178
|
type="button"
|
|
179
|
+
title="{{ 'Edit' | translate }}"
|
|
180
180
|
data-cy="Edit"
|
|
181
181
|
ng-click="detail(row.config)"
|
|
182
182
|
>
|
|
@@ -186,8 +186,8 @@
|
|
|
186
186
|
</li>
|
|
187
187
|
<li>
|
|
188
188
|
<button
|
|
189
|
-
title="{{ 'Duplicate' | translate }}"
|
|
190
189
|
type="button"
|
|
190
|
+
title="{{ 'Duplicate' | translate }}"
|
|
191
191
|
data-cy="Duplicate"
|
|
192
192
|
ng-click="clone(row.config)"
|
|
193
193
|
>
|
|
@@ -197,8 +197,8 @@
|
|
|
197
197
|
</li>
|
|
198
198
|
<li>
|
|
199
199
|
<button
|
|
200
|
-
title="{{ 'Delete' | translate }}"
|
|
201
200
|
type="button"
|
|
201
|
+
title="{{ 'Delete' | translate }}"
|
|
202
202
|
data-cy="Delete"
|
|
203
203
|
ng-click="remove(row.config)"
|
|
204
204
|
>
|
|
@@ -222,8 +222,8 @@
|
|
|
222
222
|
>
|
|
223
223
|
<p>
|
|
224
224
|
<button
|
|
225
|
-
title="{{ 'Add export' | translate }}"
|
|
226
225
|
type="button"
|
|
226
|
+
title="{{ 'Add export' | translate }}"
|
|
227
227
|
class="btn btn-primary"
|
|
228
228
|
data-ng-click="add()"
|
|
229
229
|
>
|
|
@@ -60,13 +60,13 @@
|
|
|
60
60
|
</td>
|
|
61
61
|
<td>
|
|
62
62
|
<button
|
|
63
|
-
|
|
63
|
+
class="btn btn-dot btn-dot--danger showOnHover pull-right"
|
|
64
|
+
type="button"
|
|
65
|
+
aria-label="{{ 'Delete property' | translate }}"
|
|
64
66
|
uib-tooltip="{{ 'Delete property' | translate }}"
|
|
65
|
-
|
|
66
|
-
tooltip-trigger="'mouseenter focus'"
|
|
67
|
+
tooltip-trigger="'mouseenter'"
|
|
67
68
|
tooltip-popup-delay="500"
|
|
68
|
-
|
|
69
|
-
class="btn btn-dot btn-dot--danger showOnHover pull-right"
|
|
69
|
+
ng-if="!property.default"
|
|
70
70
|
ng-click="api.remove($index); forms['property' + $index].$setDirty();"
|
|
71
71
|
>
|
|
72
72
|
<i c8y-icon="delete"></i>
|
|
@@ -79,8 +79,8 @@
|
|
|
79
79
|
<div class="m-t-8 m-b-16 d-flex">
|
|
80
80
|
<button
|
|
81
81
|
class="btn btn-default"
|
|
82
|
-
title="{{ 'Add' | translate }}"
|
|
83
82
|
type="button"
|
|
83
|
+
title="{{ 'Add' | translate }}"
|
|
84
84
|
ng-click="api.add();"
|
|
85
85
|
>
|
|
86
86
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -88,8 +88,8 @@
|
|
|
88
88
|
</button>
|
|
89
89
|
<button
|
|
90
90
|
class="btn btn-default m-l-8 m-l-xs-0"
|
|
91
|
-
title="{{ 'Add predefined' | translate }}"
|
|
92
91
|
type="button"
|
|
92
|
+
title="{{ 'Add predefined' | translate }}"
|
|
93
93
|
ng-click="api.addPredefined();"
|
|
94
94
|
>
|
|
95
95
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
<label>
|
|
3
3
|
{{ vm.property.title }}
|
|
4
4
|
<button
|
|
5
|
-
ng-if="vm.property.description"
|
|
6
|
-
type="button"
|
|
7
5
|
class="btn-help btn-help--sm"
|
|
6
|
+
type="button"
|
|
8
7
|
aria-label="{{ 'Help' | translate }}"
|
|
9
8
|
uib-popover="{{ vm.property.description }}"
|
|
10
9
|
popover-trigger="'focus'"
|
|
10
|
+
popover-placement="right"
|
|
11
11
|
popover-append-to-body="true"
|
|
12
|
-
|
|
12
|
+
ng-if="vm.property.description"
|
|
13
13
|
></button>
|
|
14
14
|
</label>
|
|
15
15
|
|
|
@@ -24,27 +24,28 @@
|
|
|
24
24
|
></c8y-schema-form>
|
|
25
25
|
<span ng-repeat="operation in vm.property.operations" class="m-r-4 m-b-8">
|
|
26
26
|
<button
|
|
27
|
-
|
|
27
|
+
class="btn btn-default btn-sm"
|
|
28
28
|
type="button"
|
|
29
|
+
title="{{ operation.name | translate }}"
|
|
30
|
+
ng-class="{ 'btn-pending': vm.isInProgress(operation) }"
|
|
31
|
+
ng-if="!vm.needsUserInput(operation)"
|
|
29
32
|
ng-disabled="vm.isInProgress(operation)"
|
|
30
33
|
ng-click="vm.execute(operation)"
|
|
31
|
-
ng-class="{ 'btn-pending': vm.isInProgress(operation) }"
|
|
32
|
-
class="btn btn-default btn-sm"
|
|
33
|
-
title="{{ operation.name | translate }}"
|
|
34
34
|
>
|
|
35
35
|
{{ operation.name | translate }}
|
|
36
36
|
</button>
|
|
37
37
|
<button
|
|
38
|
-
|
|
38
|
+
class="btn btn-default btn-sm"
|
|
39
39
|
type="button"
|
|
40
|
+
aria-label=" {{ operation.name | translate }}"
|
|
40
41
|
uib-popover-template="vm.operationPopoverTemplate"
|
|
41
|
-
popover-placement="
|
|
42
|
-
popover-append-to-body="true"
|
|
43
|
-
popover-trigger="'outsideClick'"
|
|
42
|
+
popover-placement="right"
|
|
44
43
|
popover-is-open="vm.popoverOpen"
|
|
44
|
+
popover-append-to-body="true"
|
|
45
|
+
popover-trigger="'focus'"
|
|
45
46
|
ng-disabled="vm.isInProgress(operation)"
|
|
46
47
|
ng-class="{ 'btn-pending': vm.isInProgress(operation) }"
|
|
47
|
-
|
|
48
|
+
ng-if="vm.needsUserInput(operation)"
|
|
48
49
|
>
|
|
49
50
|
{{ operation.name | translate }}
|
|
50
51
|
</button>
|
|
@@ -4,15 +4,14 @@
|
|
|
4
4
|
{{ 'HTML code' | translate }}
|
|
5
5
|
<button
|
|
6
6
|
class="btn-help btn-help--sm"
|
|
7
|
-
aria-label="{{ 'Help' | translate }}"
|
|
8
7
|
type="button"
|
|
8
|
+
aria-label="{{ 'Help' | translate }}"
|
|
9
|
+
uib-popover="{{ 'Toggle help text' | translate }}"
|
|
10
|
+
popover-placement="right"
|
|
11
|
+
popover-trigger="'focus'"
|
|
12
|
+
popover-append-to-body="true"
|
|
9
13
|
ng-click="toggleHtmlCodeTooltip()"
|
|
10
|
-
|
|
11
|
-
tooltip-popup-delay="500"
|
|
12
|
-
tooltip-append-to-body="true"
|
|
13
|
-
>
|
|
14
|
-
<i c8y-icon="question-circle-o" ng-class="{ 'text-muted': htmlCodeTooltipVisible }"></i>
|
|
15
|
-
</button>
|
|
14
|
+
></button>
|
|
16
15
|
</label>
|
|
17
16
|
<div class="alert alert-info text-left" ng-show="htmlCodeTooltipVisible">
|
|
18
17
|
<p translate>You can use the following variables in your HTML code:</p>
|
package/kpi/views/edit.html
CHANGED
|
@@ -164,17 +164,17 @@
|
|
|
164
164
|
</div>
|
|
165
165
|
</div>
|
|
166
166
|
<button
|
|
167
|
-
title="{{ 'Cancel' | translate }}"
|
|
168
|
-
type="button"
|
|
169
167
|
class="btn btn-default"
|
|
168
|
+
type="button"
|
|
169
|
+
title="{{ 'Cancel' | translate }}"
|
|
170
170
|
ng-click="cancel()"
|
|
171
171
|
>
|
|
172
172
|
{{ 'Cancel' | translate }}"
|
|
173
173
|
</button>
|
|
174
174
|
<button
|
|
175
|
-
title="{{ 'Save' | translate }}"
|
|
176
175
|
class="btn btn-primary"
|
|
177
176
|
type="submit"
|
|
177
|
+
title="{{ 'Save' | translate }}"
|
|
178
178
|
ng-disabled="!isFormValid()"
|
|
179
179
|
>
|
|
180
180
|
{{ 'Save' | translate }}
|
package/kpi/views/pieChart.html
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
<div ng-controller="pieChartCtrl" class="fit-h">
|
|
2
2
|
<c8y-pie-chart measurements="measurements" dps="dps" options="options"></c8y-pie-chart>
|
|
3
3
|
<button
|
|
4
|
-
type="button"
|
|
5
|
-
ng-show="errorMessage"
|
|
6
4
|
class="btn btn-dot pie-chart-warning"
|
|
7
|
-
|
|
5
|
+
type="button"
|
|
6
|
+
aria-label="{{ errorMessage }}"
|
|
8
7
|
uib-popover="{{ errorMessage }}"
|
|
9
|
-
popover-append-to-body="true"
|
|
10
8
|
popover-placement="top-left"
|
|
11
|
-
popover-trigger="'
|
|
9
|
+
popover-trigger="'focus'"
|
|
10
|
+
popover-append-to-body="true"
|
|
11
|
+
ng-click="$event.preventDefault()"
|
|
12
|
+
ng-show="errorMessage"
|
|
12
13
|
>
|
|
13
14
|
<i c8y-icon="warning" class="text-warning"></i>
|
|
14
15
|
</button>
|
|
@@ -8,13 +8,17 @@
|
|
|
8
8
|
</div>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
<button
|
|
12
|
+
class=" btn btn-link measurement-icon c8y-realtime asurement-realtime {{
|
|
13
|
+
getRealtimeClassName()
|
|
14
|
+
}}"
|
|
15
|
+
type="button"
|
|
16
|
+
aria-label="{{ getRealtimeIconText() | translate }}"
|
|
15
17
|
uib-tooltip="{{ getRealtimeIconText() | translate }}"
|
|
18
|
+
tooltip-placement="right"
|
|
16
19
|
tooltip-popup-delay="500"
|
|
17
20
|
tooltip-append-to-body="true"
|
|
21
|
+
ng-show="showRealtime"
|
|
18
22
|
>
|
|
19
23
|
<!-- TODO: Fix hack
|
|
20
24
|
change the function getRealtimeIconName to return 'active : inactive ' instead of icon name
|
|
@@ -26,7 +30,7 @@
|
|
|
26
30
|
inactive: getRealtimeIconName() != 'check-circle-o'
|
|
27
31
|
}"
|
|
28
32
|
></span>
|
|
29
|
-
</
|
|
33
|
+
</button>
|
|
30
34
|
|
|
31
35
|
<span ng-show="showAggregation" class="measurement-icon measurement-aggregation">
|
|
32
36
|
<i
|
|
@@ -39,9 +43,9 @@
|
|
|
39
43
|
</span>
|
|
40
44
|
|
|
41
45
|
<button
|
|
42
|
-
type="button"
|
|
43
46
|
class="btn-help btn-help--sm"
|
|
44
|
-
|
|
47
|
+
type="button"
|
|
48
|
+
aria-label="{{ 'Help' | translate }}"
|
|
45
49
|
uib-popover-html="'Drag X-Axis to move time.<br>Select time period to zoom.<br>Double click to zoom out.<br>Values in the Y-Axis may be truncated, hover over the values or the circle in the bottom to display whole values.' | translate"
|
|
46
50
|
popover-placement="right"
|
|
47
51
|
popover-trigger="'focus'"
|
|
@@ -248,8 +248,9 @@
|
|
|
248
248
|
</div>
|
|
249
249
|
|
|
250
250
|
<button
|
|
251
|
-
title="{{ 'Cancel' | translate }}"
|
|
252
251
|
class="btn btn-default"
|
|
252
|
+
type="button"
|
|
253
|
+
title="{{ 'Cancel' | translate }}"
|
|
253
254
|
ng-click="vm.clearNewDevice()"
|
|
254
255
|
ng-disabled="vm.newDevice.adding"
|
|
255
256
|
>
|
|
@@ -272,9 +273,9 @@
|
|
|
272
273
|
</form>
|
|
273
274
|
<div class="card-footer separator">
|
|
274
275
|
<button
|
|
275
|
-
title="{{ 'Add device' | translate }}"
|
|
276
|
-
type="button"
|
|
277
276
|
class="btn btn-default m-b-0"
|
|
277
|
+
type="button"
|
|
278
|
+
title="{{ 'Add device' | translate }}"
|
|
278
279
|
ng-click="vm.startAddingNewDevice()"
|
|
279
280
|
>
|
|
280
281
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -349,8 +350,8 @@
|
|
|
349
350
|
<button
|
|
350
351
|
class="m-l-auto btn-dot btn-dot--danger btn showOnHover"
|
|
351
352
|
type="button"
|
|
352
|
-
uib-tooltip="{{ 'Remove' | translate }}"
|
|
353
353
|
aria-label="{{ 'Remove' | translate }}"
|
|
354
|
+
uib-tooltip="{{ 'Remove' | translate }}"
|
|
354
355
|
tooltip-popup-delay="500"
|
|
355
356
|
tooltip-append-to-body="true"
|
|
356
357
|
ng-click="vm.onClickDelete(device)"
|
|
@@ -364,9 +365,9 @@
|
|
|
364
365
|
|
|
365
366
|
<div class="c8y-list__item__actions">
|
|
366
367
|
<button
|
|
368
|
+
class="collapse-btn"
|
|
367
369
|
type="button"
|
|
368
370
|
title="{{ 'Expand/collapse' | translate }}"
|
|
369
|
-
class="collapse-btn"
|
|
370
371
|
ng-click="isDetailExpanded = !isDetailExpanded"
|
|
371
372
|
>
|
|
372
373
|
<i c8y-icon="chevron-down"></i>
|
|
@@ -899,8 +900,9 @@
|
|
|
899
900
|
|
|
900
901
|
<div class="form-group">
|
|
901
902
|
<button
|
|
902
|
-
title="{{ 'Cancel' | translate }}"
|
|
903
903
|
class="btn btn-default"
|
|
904
|
+
type="button"
|
|
905
|
+
title="{{ 'Cancel' | translate }}"
|
|
904
906
|
ng-click="vm.clearEditDevice()"
|
|
905
907
|
ng-disabled="editDevice.adding"
|
|
906
908
|
>
|
|
@@ -908,6 +910,7 @@
|
|
|
908
910
|
</button>
|
|
909
911
|
<button
|
|
910
912
|
class="btn btn-primary"
|
|
913
|
+
type="button"
|
|
911
914
|
ng-class="{ 'btn-pending': editDevice.adding }"
|
|
912
915
|
ng-click="vm.updateDevice(editDevice)"
|
|
913
916
|
ng-disabled="vm.isEditFormInvalid(vm.getDeviceFormName(editDevice), editDevice) || editDevice.adding"
|
|
@@ -1286,9 +1289,9 @@
|
|
|
1286
1289
|
|
|
1287
1290
|
<div class="form-group">
|
|
1288
1291
|
<button
|
|
1289
|
-
title="{{ 'Cancel' | translate }}"
|
|
1290
|
-
type="button"
|
|
1291
1292
|
class="btn btn-default"
|
|
1293
|
+
type="button"
|
|
1294
|
+
title="{{ 'Cancel' | translate }}"
|
|
1292
1295
|
ng-click="vm.clearNewDevice()"
|
|
1293
1296
|
ng-disabled="vm.newDevice.adding"
|
|
1294
1297
|
>
|
|
@@ -1320,9 +1323,9 @@
|
|
|
1320
1323
|
</div>
|
|
1321
1324
|
<div class="card-footer separator" ng-hide="vm.expandedId === 'newDevice'">
|
|
1322
1325
|
<button
|
|
1323
|
-
title="{{ 'Add SNMP device' | translate }}"
|
|
1324
|
-
type=""
|
|
1325
1326
|
class="btn btn-default m-b-0"
|
|
1327
|
+
type="button"
|
|
1328
|
+
title="{{ 'Add SNMP device' | translate }}"
|
|
1326
1329
|
ng-click="vm.startAddingNewDevice();"
|
|
1327
1330
|
>
|
|
1328
1331
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -1485,9 +1488,9 @@
|
|
|
1485
1488
|
</div>
|
|
1486
1489
|
</div>
|
|
1487
1490
|
<button
|
|
1488
|
-
title="{{ 'Cancel' | translate }}"
|
|
1489
|
-
type="button"
|
|
1490
1491
|
class="btn btn-default"
|
|
1492
|
+
type="button"
|
|
1493
|
+
title="{{ 'Cancel' | translate }}"
|
|
1491
1494
|
ng-click="vm.clearNewDevice()"
|
|
1492
1495
|
ng-disabled="vm.newDevice.adding"
|
|
1493
1496
|
>
|
|
@@ -1510,9 +1513,9 @@
|
|
|
1510
1513
|
</form>
|
|
1511
1514
|
<div class="card-footer separator">
|
|
1512
1515
|
<button
|
|
1513
|
-
title="{{ 'Add OPC UA device' | translate }}"
|
|
1514
|
-
type="button"
|
|
1515
1516
|
class="btn-add-block m-b-0"
|
|
1517
|
+
type="button"
|
|
1518
|
+
title="{{ 'Add OPC UA device' | translate }}"
|
|
1516
1519
|
ng-click="vm.startAddingNewDevice()"
|
|
1517
1520
|
>
|
|
1518
1521
|
<i c8y-icon="plus-circle"></i>
|
|
@@ -26,15 +26,15 @@
|
|
|
26
26
|
|
|
27
27
|
<div class="form-group" ng-if="vm.shouldShowSwitch(element)">
|
|
28
28
|
<button
|
|
29
|
-
type="button"
|
|
30
29
|
class="btn btn-default"
|
|
30
|
+
type="button"
|
|
31
|
+
title="{{ element.valueObj.label }}"
|
|
31
32
|
ng-disabled="!vm.canUpdateElement(vm.device, element) || vm.isElementChangePending(element)"
|
|
32
33
|
uib-btn-checkbox
|
|
33
34
|
btn-checkbox-true="element.meta.enumValues[1]"
|
|
34
35
|
btn-checkbox-false="element.meta.enumValues[0]"
|
|
35
36
|
ng-model="element.valueObj"
|
|
36
37
|
ng-change="vm.updateElement(vm.device, element, element.valueObj)"
|
|
37
|
-
title="{{ element.valueObj.label }}"
|
|
38
38
|
style="z-index: 2"
|
|
39
39
|
>
|
|
40
40
|
<span ng-bind="element.valueObj.label"></span>
|
|
@@ -99,8 +99,9 @@
|
|
|
99
99
|
></span>
|
|
100
100
|
<span ng-if="vm.canUpdateElement(vm.device, element)" class="input-group-btn">
|
|
101
101
|
<button
|
|
102
|
-
title="{{ 'Set' | translate }}"
|
|
103
102
|
class="btn btn-primary"
|
|
103
|
+
type="button"
|
|
104
|
+
title="{{ 'Set' | translate }}"
|
|
104
105
|
ng-class="{ 'btn-pending': vm.isElementChangePending(element) }"
|
|
105
106
|
ng-disabled="vm.isElementChangePending(element) || !vm.canUpdateElement(vm.device, element) || elementValueForm.$invalid"
|
|
106
107
|
>
|
|
@@ -25,8 +25,9 @@
|
|
|
25
25
|
|
|
26
26
|
<div class="control-container" ng-if="shouldShowSwitch(element)">
|
|
27
27
|
<button
|
|
28
|
-
type="button"
|
|
29
28
|
class="btn btn-default"
|
|
29
|
+
type="button"
|
|
30
|
+
title="{{ element.valueObj.label }}"
|
|
30
31
|
style="z-index: 2"
|
|
31
32
|
ng-disabled="!canUpdateElement(device, element) || isElementChangePending(element)"
|
|
32
33
|
uib-btn-checkbox
|
|
@@ -34,7 +35,6 @@
|
|
|
34
35
|
btn-checkbox-false="element.meta.enumValues[0]"
|
|
35
36
|
ng-model="element.valueObj"
|
|
36
37
|
ng-change="updateElement(device, element, element.valueObj)"
|
|
37
|
-
title="{{ element.valueObj.label }}"
|
|
38
38
|
>
|
|
39
39
|
<span ng-bind="element.valueObj.label"></span>
|
|
40
40
|
</button>
|
|
@@ -94,9 +94,9 @@
|
|
|
94
94
|
></span>
|
|
95
95
|
<span class="input-group-btn" ng-if="canUpdateElement(device, element)">
|
|
96
96
|
<button
|
|
97
|
-
title="{{ 'Set' | translate }}"
|
|
98
|
-
type="submit"
|
|
99
97
|
class="btn btn-primary"
|
|
98
|
+
type="submit"
|
|
99
|
+
title="{{ 'Set' | translate }}"
|
|
100
100
|
ng-disabled="isElementChangePending(element) || !canUpdateElement(device, element) || elementValueForm.$invalid"
|
|
101
101
|
>
|
|
102
102
|
{{ 'Set' | translate }}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";!function(){function n(n,o,t){var e=this,c=t("Local");function
|
|
1
|
+
"use strict";!function(){function n(n,o,t){var e=this,c=t("Local"),i=t("Connect"),s=t("Show connection");function r(n){var o=l(n);return o&&!!o.isConnectDissalowed}function l(o){return _.find(e.protocols,function(n){return n.value===o.config.protocol})}_.assign(e,{$onInit:function(){o.getProtocols().then(function(n){e.protocols=n})},isLocal:function(){return n.isLocalEndpoint(e.endpoint)},labelLocal:c,labelConnect:i,labelShowConnection:s,connectBtnCls:function(){var n=(e.endpoint.connection||{}).status;return{btn:!0,"btn-block":!0,"btn-default":!n,"btn-danger":"ERROR"===n,"btn-warning":"CONNECTING"===n,"btn-success":"CONNECTED"===n}},connect:function(){var n=(e.endpoint.connection||{}).clientWindow;n?n.focus():e.onConnect({endpoint:e.endpoint})},edit:function(){e.onEdit({endpoint:e.endpoint})},remove:function(){e.onRemove({endpoint:e.endpoint})},isDisabled:r,getDisabledTooltip:function(n){var o=l(n);return r(n)?_.get(o,"tooltipConnectDissalowed"):""}})}n.$inject=["c8yRemoteAccessUI","c8yRemoteAccess","gettext"],angular.module("c8y.remoteAccess").component("c8yRemoteAccessEndpointCard",{bindings:{endpoint:"<",onConnect:"&",onEdit:"&",onRemove:"&"},templateUrl:":::PLUGIN_PATH:::/remoteAccessEndpointCard/remoteAccessEndpointCard.html",controller:n,controllerAs:"vm"})}();
|