@c8y/ng1-modules 1018.497.6 → 1018.499.5

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.
@@ -1 +1 @@
1
- "use strict";angular.module("c8y.parts.alarmMapping",[]).config(["c8yNavigatorProvider","c8yViewsProvider","gettext",function(a,i,e){a.addNavigation({parent:{name:e("Business rules"),icon:"c8y-business-rules"},name:e("Alarm mapping"),path:"alarmmapping",icon:"alarm",priority:2900}),i.when("/alarmmapping",{templateUrl:":::PLUGIN_PATH:::/views/index.html"})}]);
1
+ "use strict";angular.module("c8y.parts.alarmMapping",[]).config(["c8yNavigatorProvider","c8yViewsProvider","gettext",function(a,i,e){var r={allRoles:["ROLE_OPTION_MANAGEMENT_READ"]};a.addNavigation({parent:{name:e("Business rules"),icon:"c8y-business-rules"},name:e("Alarm mapping"),path:"alarmmapping",icon:"alarm",priority:2900,showIfPermissions:r}),i.when("/alarmmapping",{templateUrl:":::PLUGIN_PATH:::/views/index.html",showIfPermissions:r})}]);
@@ -1,11 +1,19 @@
1
1
  <table class="table table-striped bg-inherit">
2
2
  <thead class="bg-inherit">
3
3
  <tr class="bg-inherit">
4
- <th class="sticky-top has-sticky-card-header" translate>Type</th>
4
+ <th
5
+ class="sticky-top has-sticky-card-header"
6
+ translate
7
+ >
8
+ Type
9
+ </th>
5
10
  <th class="sticky-top has-sticky-card-header text-center">
6
11
  <span translate>Read</span>
7
12
  <br />
8
- <label class="c8y-checkbox d-inline-block" ng-if="!vm.readOnly">
13
+ <label
14
+ class="c8y-checkbox d-inline-block"
15
+ ng-if="!vm.readOnly"
16
+ >
9
17
  <input
10
18
  type="checkbox"
11
19
  ng-click="::vm.selectAll('READ')"
@@ -19,15 +27,18 @@
19
27
  <span translate>Admin</span>
20
28
  <button
21
29
  class="btn-help btn-help--sm"
22
- type="button"
23
30
  aria-label="{{ 'Help' | translate }}"
31
+ type="button"
24
32
  uib-popover="{{::vm.STRINGS.ADMIN | translate}}"
25
33
  popover-placement="top"
26
34
  popover-trigger="'focus'"
27
35
  popover-append-to-body="true"
28
36
  ></button>
29
37
  <br />
30
- <label class="c8y-checkbox d-inline-block" ng-if="!vm.readOnly">
38
+ <label
39
+ class="c8y-checkbox d-inline-block"
40
+ ng-if="!vm.readOnly"
41
+ >
31
42
  <input
32
43
  type="checkbox"
33
44
  ng-click="::vm.selectAll('ADMIN')"
@@ -40,7 +51,10 @@
40
51
  <th class="sticky-top has-sticky-card-header text-center">
41
52
  <span translate>Create</span>
42
53
  <br />
43
- <label class="c8y-checkbox d-inline-block" ng-if="!vm.readOnly">
54
+ <label
55
+ class="c8y-checkbox d-inline-block"
56
+ ng-if="!vm.readOnly"
57
+ >
44
58
  <input
45
59
  type="checkbox"
46
60
  ng-click="::vm.selectAll('CREATE')"
@@ -56,7 +70,10 @@
56
70
  >
57
71
  <span translate>Update</span>
58
72
  <br />
59
- <label class="c8y-checkbox d-inline-block" ng-if="!vm.readOnly">
73
+ <label
74
+ class="c8y-checkbox d-inline-block"
75
+ ng-if="!vm.readOnly"
76
+ >
60
77
  <input
61
78
  type="checkbox"
62
79
  ng-click="::vm.selectAll('UPDATE')"
@@ -75,8 +92,8 @@
75
92
  {{::vm.categoryLabel(group) | translate}}
76
93
  <button
77
94
  class="btn-help btn-help--sm"
78
- type="button"
79
95
  aria-label="{{ 'Help' | translate }}"
96
+ type="button"
80
97
  uib-popover="{{::vm.STRINGS.PERMISSIONS_GLOBAL[group.category] | translate}}"
81
98
  popover-placement="right"
82
99
  popover-append-to-body="true"
@@ -87,8 +104,8 @@
87
104
  <td class="text-center">
88
105
  <label
89
106
  class="c8y-checkbox d-inline-block"
90
- ng-show="::vm.hasPermission(group.permissions, 'READ')"
91
107
  ng-class="{ disabled: vm.readOnly }"
108
+ ng-show="::vm.hasPermission(group.permissions, 'READ')"
92
109
  >
93
110
  <input
94
111
  type="checkbox"
@@ -102,8 +119,8 @@
102
119
  <td class="text-center">
103
120
  <label
104
121
  class="c8y-checkbox d-inline-block"
105
- ng-show="::vm.hasPermission(group.permissions, 'ADMIN')"
106
122
  ng-class="{ disabled: vm.readOnly }"
123
+ ng-show="::vm.hasPermission(group.permissions, 'ADMIN')"
107
124
  >
108
125
  <input
109
126
  type="checkbox"
@@ -117,8 +134,8 @@
117
134
  <td class="text-center">
118
135
  <label
119
136
  class="c8y-checkbox d-inline-block"
120
- ng-show="::vm.hasPermission(group.permissions, 'CREATE')"
121
137
  ng-class="{ disabled: vm.readOnly }"
138
+ ng-show="::vm.hasPermission(group.permissions, 'CREATE')"
122
139
  >
123
140
  <input
124
141
  type="checkbox"
@@ -129,11 +146,14 @@
129
146
  <span class="sr-only">{{ 'Create' | translate }}</span>
130
147
  </label>
131
148
  </td>
132
- <td class="text-center" ng-if="vm.hasPermissionWithAccess('UPDATE')">
149
+ <td
150
+ class="text-center"
151
+ ng-if="vm.hasPermissionWithAccess('UPDATE')"
152
+ >
133
153
  <label
134
154
  class="c8y-checkbox d-inline-block"
135
- ng-show="::vm.hasPermission(group.permissions, 'UPDATE')"
136
155
  ng-class="{ disabled: vm.readOnly }"
156
+ ng-show="::vm.hasPermission(group.permissions, 'UPDATE')"
137
157
  >
138
158
  <input
139
159
  type="checkbox"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@c8y/ng1-modules",
3
- "version": "1018.497.6",
3
+ "version": "1018.499.5",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Cumulocity",
6
6
  "description": "AngularJS modules for Cumulocity IoT applications.",
@@ -2,35 +2,43 @@
2
2
 
3
3
  <c8y-breadcrumbs-set>
4
4
  <c8y-breadcrumbs-item
5
+ icon="connected-people"
5
6
  path="#roles/global_roles"
6
7
  label="{{ 'Global roles' | translate }}"
7
- icon="connected-people"
8
8
  ></c8y-breadcrumbs-item>
9
9
  <c8y-breadcrumbs-item
10
+ icon="c8y-users"
10
11
  path="#roles"
11
12
  label="{{ 'Roles' | translate }}"
12
- icon="c8y-users"
13
13
  ></c8y-breadcrumbs-item>
14
14
  <c8y-breadcrumbs-item
15
- label="{{ 'Accounts' | translate }}"
16
15
  icon="c8y-accounts"
16
+ label="{{ 'Accounts' | translate }}"
17
17
  ></c8y-breadcrumbs-item>
18
18
  </c8y-breadcrumbs-set>
19
19
 
20
20
  <div class="card content-fullpage card--grid grid__col--8-4--sm">
21
- <form name="vm.globalRoleDetailForm" class="d-contents">
21
+ <form
22
+ class="d-contents"
23
+ name="vm.globalRoleDetailForm"
24
+ >
22
25
  <div class="d-flex d-col inner-scroll bg-level-0">
23
26
  <div class="card-header large-padding separator">
24
- <div class="card-title" translate>Global role</div>
27
+ <div
28
+ class="card-title"
29
+ translate
30
+ >
31
+ Global role
32
+ </div>
25
33
  </div>
26
34
  <div class="card-block large-padding p-b-0 flex-no-shrink">
27
35
  <div class="form-group">
28
36
  <label translate>Name</label>
29
37
  <input
30
- name="name"
38
+ class="form-control"
31
39
  placeholder="{{ 'e.g. My global role' | translate }}"
40
+ name="name"
32
41
  required
33
- class="form-control"
34
42
  ng-maxlength="254"
35
43
  ng-model="vm.role.name"
36
44
  />
@@ -39,10 +47,10 @@
39
47
  <div class="form-group">
40
48
  <label translate>Description</label>
41
49
  <textarea
42
- aria-multiline="true"
50
+ class="form-control"
43
51
  aria-label="{{ 'Description' | translate }}"
52
+ aria-multiline="true"
44
53
  name="description"
45
- class="form-control"
46
54
  rows="3"
47
55
  ng-maxlength="1000"
48
56
  ng-model="vm.role.description"
@@ -57,14 +65,17 @@
57
65
  </div>
58
66
  <button
59
67
  class="btn-help"
60
- type="button"
61
68
  aria-label="{{ 'Help' | translate }}"
69
+ type="button"
62
70
  uib-popover-template="'helpContent.html'"
63
71
  popover-trigger="'focus'"
64
72
  popover-append-to-body="true"
65
73
  popover-placement="right"
66
74
  ></button>
67
- <script type="text/ng-template" id="helpContent.html">
75
+ <script
76
+ id="helpContent.html"
77
+ type="text/ng-template"
78
+ >
68
79
  <div>
69
80
  <p translate>
70
81
  A <strong>global role</strong> contains generally applicable permissions. For example,
@@ -82,10 +93,10 @@
82
93
  </div>
83
94
  <div class="card-block large-padding bg-inherit overflow-visible p-b-0">
84
95
  <c8y-roles-matrix
96
+ class="bg-inherit"
85
97
  available-roles="vm.permissions"
86
98
  selected-roles="vm.selectedPermissions"
87
99
  on-selected-roles-change="vm.onSelectedRolesChange(selectedRoles)"
88
- class="bg-inherit"
89
100
  ></c8y-roles-matrix>
90
101
  </div>
91
102
  </div>
@@ -98,8 +109,8 @@
98
109
 
99
110
  <button
100
111
  class="btn-help"
101
- type="button"
102
112
  aria-label="{{ 'Help' | translate }}"
113
+ type="button"
103
114
  uib-popover="{{ 'This role has access to the applications selected below' | translate }}"
104
115
  popover-trigger="'focus'"
105
116
  popover-placement="right"
@@ -107,7 +118,11 @@
107
118
  ></button>
108
119
  </div>
109
120
  <div class="card-block large-padding p-t-0">
110
- <p class="alert alert-info" ng-show="vm.hasAppPermissions()" translate>
121
+ <p
122
+ class="alert alert-info"
123
+ ng-show="vm.hasAppPermissions()"
124
+ translate
125
+ >
111
126
  This role already has access to all applications. Revoke all "Application management"
112
127
  permissions to grant access only to some applications.
113
128
  </p>
@@ -123,8 +138,8 @@
123
138
  <div class="card-footer large-padding separator-top grid__col-fullspan">
124
139
  <button
125
140
  class="btn btn-default"
126
- type="button"
127
141
  title="{{ 'Cancel' | translate }}"
142
+ type="button"
128
143
  ng-click="vm.cancel()"
129
144
  c8y-key-shortcut="Escape"
130
145
  >
@@ -132,8 +147,8 @@
132
147
  </button>
133
148
  <button
134
149
  class="btn btn-primary"
135
- type="button"
136
150
  title="{{ 'Save' | translate }}"
151
+ type="button"
137
152
  ng-click="vm.save()"
138
153
  ng-disabled="vm.saving || vm.globalRoleDetailForm.$invalid || (vm.role.id && vm.globalRoleDetailForm.$pristine)"
139
154
  c8y-key-shortcut="Enter"
@@ -1 +1 @@
1
- "use strict";!function(){function e(i,r,n,t,c,o,P,a,u,l,s,e,d,f,h,g,v){var m,p=r.deviceId||r.groupId,S={},A={},x={done:!1,inProgress:!1},y={true:{text:g("Active"),icon:"check-circle",cls:"text-success"},false:{text:g("Inactive"),icon:"ban",cls:"text-danger"}},b=s.getContext(),R=g("Global smart rules");function C(){return n.when().then(I).then(E).then(N).then(U).then(T).catch(D)}function I(){x.inProgress=!0}function T(){x.inProgress=!1,x.done=!0,x.error=!1}function D(e){e.data&&e.data.message&&l.danger(e.data.message),x.inProgress=!1,x.done=!0,x.error=!0}function E(){return f.list().then(M)}function M(e){_.forEach(e||[],function(e){S[e.name]=e})}function N(){var e=p?h.listByContext(p):n.resolve([]),t=d.hasPermissions().then(function(e){return e?h.list():n.when([])});return n.all({listByContext:e,list:t}).then(function(e){i.rules=function(e){var t=e;p&&(t=_.reject(e,function(e){var n=new RegExp("".concat(e,"/dashboard"));return function(e){var t=_.get(e,"config.url","");return w(e)&&!n.test(t)}}(p)));return t}(_.concat(e.listByContext,e.list))})}function w(e){return"sendDashboardsViaEmail"===e.ruleTemplateName}function O(e){return h.hasSource(e,p)}function U(){var e;return Array.isArray(i.rules)&&0<i.rules.length&&null!==(e=s.getContext()).context?o.childAssets(e.id,{skipDetail:!0,params:{pageSize:2e3,withChildren:!1}}).then(function(e){i.children=e}).then(function(){i.ruleChildren={},_.forEach(i.rules,function(e){i.ruleChildren[e.id]=L(e)})}):n.resolve()}function L(t){return _.filter(i.children,function(e){return h.hasSource(t,e)})}_.assign(i,{isOpen:{},moId:p,loadingStatus:x,refresh:C,paging:{refresh:C},ruleTemplates:S,getLinkToDM:function(){var e={deviceId:p};return t(m||"")(e)},add:function(){h.addNewWithUI().then(C)},edit:function(e){h.editWithUI(e).then(C)},clone:function(e){h.cloneWithUI(e).then(C)},remove:function(e){u({title:g("Delete smart rule"),body:v.getString('You are about to delete smart rule "{{name}}". Do you want to proceed?',e),labels:{ok:g("Delete")},status:"danger"}).then(angular.bind(h,h.remove,e)).then(function(){return _.pull(i.rules,e)}).then(function(){return l.success(g("Smart rule deleted."))})},hasSource:O,getChildrenEnabledForSmartRule:L,toggleRuleActivationForContextMO:function(e){if(O(e))return h.deactivate(e,p,!1).then(function(){l.success(v.getString('Smart rule "{{name}}" deactivated.',e))});return h.activate(e,p,!1).then(function(){l.success(v.getString('Smart rule "{{name}}" activated.',e))})},toggleRuleActivationForChildrenMOs:function(e,n){var t=_.filter(n,function(t){return!_.find(i.ruleChildren[e.id],function(e){return e.id===t.id})}),r=_.filter(i.ruleChildren[e.id],function(t){return!_.find(n,function(e){return t.id===e.id})});return h.updateSources(e,t,r,!1).then(N).then(U).then(function(){l.success(v.getString('Smart rule "{{name}}" activated/deactivated for children.',e))})},tooltip:function(e){var t={activate:{"for group":g("Activate for this group"),"for device":g("Activate for this device"),"for object":g("Activate for this object")},deactivate:{"for group":g("Deactivate for this group"),"for device":g("Deactivate for this device"),"for object":g("Deactivate for this object")}},e=e.enabled&&O(e)?"deactivate":"activate",n=r.groupId?"group":"object";return n=r.deviceId?"device":n,t[e]["for ".concat(n)]},type:function(e){var t,e=S[e.ruleTemplateName];e&&(t=e.label.full?v.getString(e.label.full):"".concat(v.getString(e.label.input)," ").concat(v.getString(e.label.output)));return t},status:function(e){return y[e.enabled].text},statusIcon:function(e){return y[e.enabled].icon},statusClass:function(e){return y[e.enabled].cls},showTitle:function(){return null!==s.getContext().context},title:R,context:b,inputIcon:function(e){var t,e=S[e.ruleTemplateName];e&&(t=e.paramGroups.input.icon);return t},outputIcon:function(e){var t,e=S[e.ruleTemplateName];e&&(t=e.paramGroups.output.icon);return t},canAddRules:function(e){var t=_.get(S,"".concat(_.get(e,"ruleTemplateName"),"._active")),n=A.canAddRules;e&&!t&&(n=!1);_.isUndefined(n)&&(e=i.context?{adminMOs:[i.context.id]}:{allRoles:["ROLE_INVENTORY_ADMIN"],anyRole:["ROLE_SMARTRULE_ADMIN","ROLE_CEP_MANAGEMENT_ADMIN"]},A.canAddRules=a.isAllowed(e).then(function(e){return A.canAddRules=e,A.canAddRules}),n=!1);return n},canModify:function(t){A.rules=A.rules||{};var n=A.rules,e=n[t.id];_.isUndefined(e)&&(n[t.id]=a.isAllowed({adminMOs:[t.id]}).then(function(e){return n[t.id]=e,n[t.id]}),e=!1);return e},canApplyOnChildren:function(e){return!w(e)},canSeeSection:function(){var e=A.canSeeSection;_.isUndefined(e)&&(A.canSeeSection=(c.checkIfModulesExist(["c8y.cockpit.config"])?d.shouldShowLocalSmartRules():n.when(!1)).then(function(e){return A.canSeeSection=e,A.canSeeSection}),e=!1);return e}}),C(),null===s.getContext().context&&e.changeTitle({title:R}),"device"===b.context&&c.getStaticLinkTemplate("devicemanagementDeviceDetails").then(function(e){m=e})}e.$inject=["$scope","$routeParams","$q","$interpolate","c8yBase","c8yInventory","c8yApplication","c8yPermissions","c8yModal","c8yAlert","c8yUiUtil","c8yTitle","c8ySmartRulesAvailability","smartRuleTemplatesSvc","smartRulesSvc","gettext","gettextCatalog"],angular.module("c8y.smartRules").controller("SmartRulesListCtrl",e)}();
1
+ "use strict";!function(){function e(i,r,e,n,t,o,c,j,a,u,l,s,d,f,h,g,v,m){var p,S=r.deviceId||r.groupId,x={},A={},b={done:!1,inProgress:!1},R={true:{text:v("Active"),icon:"check-circle",cls:"text-success"},false:{text:v("Inactive"),icon:"ban",cls:"text-danger"}},y=s.getContext(),C=v("Global smart rules");function I(){return n.when().then(T).then(M).then(w).then(L).then(D).catch(E)}function T(){b.inProgress=!0}function D(){b.inProgress=!1,b.done=!0,b.error=!1}function E(e){e.data&&e.data.message&&l.danger(e.data.message),b.inProgress=!1,b.done=!0,b.error=!0}function M(){return h.list().then(N)}function N(e){_.forEach(e||[],function(e){x[e.name]=e})}function w(){var e=S?g.listByContext(S):n.resolve([]),t=f.hasPermissions().then(function(e){return e?g.list():n.when([])});return n.all({listByContext:e,list:t}).then(function(e){i.rules=function(e){var t=e;S&&(t=_.reject(e,function(e){var n=new RegExp("".concat(e,"/dashboard"));return function(e){var t=_.get(e,"config.url","");return O(e)&&!n.test(t)}}(S)));return t}(_.concat(e.listByContext,e.list))})}function O(e){return"sendDashboardsViaEmail"===e.ruleTemplateName}function U(e){return g.hasSource(e,S)}function L(){var e;return Array.isArray(i.rules)&&0<i.rules.length&&null!==(e=s.getContext()).context?c.childAssets(e.id,{skipDetail:!0,params:{pageSize:2e3,withChildren:!1}}).then(function(e){i.children=e}).then(function(){i.ruleChildren={},_.forEach(i.rules,function(e){i.ruleChildren[e.id]=P(e)})}):n.resolve()}function P(t){return _.filter(i.children,function(e){return g.hasSource(t,e)})}_.assign(i,{isOpen:{},moId:S,loadingStatus:b,refresh:I,paging:{refresh:I},ruleTemplates:x,getLinkToDM:function(){var e={deviceId:S};return t(p||"")(e)},add:function(){g.addNewWithUI().then(I)},edit:function(e){g.editWithUI(e).then(I)},clone:function(e){g.cloneWithUI(e).then(I)},remove:function(e){u({title:v("Delete smart rule"),body:m.getString('You are about to delete smart rule "{{name}}". Do you want to proceed?',e),labels:{ok:v("Delete")},status:"danger"}).then(angular.bind(g,g.remove,e)).then(function(){return _.pull(i.rules,e)}).then(function(){return l.success(v("Smart rule deleted."))})},hasSource:U,getChildrenEnabledForSmartRule:P,toggleRuleActivationForContextMO:function(e){if(U(e))return g.deactivate(e,S,!1).then(function(){l.success(m.getString('Smart rule "{{name}}" deactivated.',e))});return g.activate(e,S,!1).then(function(){l.success(m.getString('Smart rule "{{name}}" activated.',e))})},toggleRuleActivationForChildrenMOs:function(e,n){var t=_.filter(n,function(t){return!_.find(i.ruleChildren[e.id],function(e){return e.id===t.id})}),r=_.filter(i.ruleChildren[e.id],function(t){return!_.find(n,function(e){return t.id===e.id})});return g.updateSources(e,t,r,!1).then(w).then(L).then(function(){l.success(m.getString('Smart rule "{{name}}" activated/deactivated for children.',e))})},tooltip:function(e){var t={activate:{"for group":v("Activate for this group"),"for device":v("Activate for this device"),"for object":v("Activate for this object")},deactivate:{"for group":v("Deactivate for this group"),"for device":v("Deactivate for this device"),"for object":v("Deactivate for this object")}},e=e.enabled&&U(e)?"deactivate":"activate",n=r.groupId?"group":"object";return n=r.deviceId?"device":n,t[e]["for ".concat(n)]},type:function(e){var t,e=x[e.ruleTemplateName];e&&(t=e.label.full?m.getString(e.label.full):"".concat(m.getString(e.label.input)," ").concat(m.getString(e.label.output)));return t},status:function(e){return R[e.enabled].text},statusIcon:function(e){return R[e.enabled].icon},statusClass:function(e){return R[e.enabled].cls},showTitle:function(){return null!==s.getContext().context},title:C,context:y,inputIcon:function(e){var t,e=x[e.ruleTemplateName];e&&(t=e.paramGroups.input.icon);return t},outputIcon:function(e){var t,e=x[e.ruleTemplateName];e&&(t=e.paramGroups.output.icon);return t},canAddRules:function(e){var t=_.get(x,"".concat(_.get(e,"ruleTemplateName"),"._active")),n=A.canAddRules;e&&!t&&(n=!1);_.isUndefined(n)&&(e=i.context?{adminMOs:[i.context.id]}:{allRoles:["ROLE_INVENTORY_ADMIN"],anyRole:["ROLE_SMARTRULE_ADMIN","ROLE_CEP_MANAGEMENT_ADMIN"]},A.canAddRules=a.isAllowed(e).then(function(e){return A.canAddRules=e,A.canAddRules}),n=!1);return n},canModify:function(t){A.rules=A.rules||{};var n=A.rules,e=n[t.id];_.isUndefined(e)&&(n[t.id]=a.isAllowed({adminMOs:[t.id]}).then(function(e){return n[t.id]=e,n[t.id]}),e=!1);return e},canApplyOnChildren:function(e){return!O(e)},canSeeSection:function(){var e=A.canSeeSection;_.isUndefined(e)&&(A.canSeeSection=(o.checkIfModulesExist(["c8y.cockpit.config"])?f.shouldShowLocalSmartRules():n.when(!1)).then(function(e){return A.canSeeSection=e,A.canSeeSection}),e=!1);return e},isConfigurationGlobalSmartRulesContext:void 0}),i.isConfigurationGlobalSmartRulesContext=e.path().includes("/rules"),I(),null===s.getContext().context&&d.changeTitle({title:C}),"device"===y.context&&o.getStaticLinkTemplate("devicemanagementDeviceDetails").then(function(e){p=e})}e.$inject=["$scope","$routeParams","$location","$q","$interpolate","c8yBase","c8yInventory","c8yApplication","c8yPermissions","c8yModal","c8yAlert","c8yUiUtil","c8yTitle","c8ySmartRulesAvailability","smartRuleTemplatesSvc","smartRulesSvc","gettext","gettextCatalog"],angular.module("c8y.smartRules").controller("SmartRulesListCtrl",e)}();
@@ -1,6 +1,6 @@
1
1
  <div ng-controller="SmartRulesListCtrl as vm">
2
2
  <div ng-if="canSeeSection()">
3
- <c8y-breadcrumbs-set>
3
+ <c8y-breadcrumbs-set ng-if="isConfigurationGlobalSmartRulesContext">
4
4
  <c8y-breadcrumbs-item
5
5
  icon="c8y-smart-rules"
6
6
  label="{{ 'Global smart rules' | translate }}"