@c8y/ng1-modules 1022.16.2 → 1022.21.3

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.
@@ -512,9 +512,6 @@ msgstr "显示选定测量的当前值的筒仓"
512
512
  msgid "A table display of a collection of data points"
513
513
  msgstr "以表的形式显示一组数据点"
514
514
 
515
- msgid "A user managed via your authorization server cannot change the password of the user."
516
- msgstr "通过您的授权服务器管理的用户无法更改该用户的密码。"
517
-
518
515
  msgid "ACCEPTED"
519
516
  msgstr "已接受"
520
517
 
@@ -6795,6 +6792,9 @@ msgstr "未能保存。请重试。"
6795
6792
  msgid "Failed to search for address."
6796
6793
  msgstr "无法搜索地址。"
6797
6794
 
6795
+ msgid "Failed to send password reset link."
6796
+ msgstr "发送密码重置链接失败。"
6797
+
6798
6798
  msgid "Failed to set package availability."
6799
6799
  msgstr "无法设置包可用性。"
6800
6800
 
@@ -11801,6 +11801,9 @@ msgstr "密码重置邮件模板(地址未知时)"
11801
11801
  msgid "Password reset link expired. Please enter your email address to receive a new one."
11802
11802
  msgstr "密码重置链接已过期。请输入您的电子邮件地址以接收新密码。"
11803
11803
 
11804
+ msgid "Password reset link sent."
11805
+ msgstr "密码重置链接已发送。"
11806
+
11804
11807
  msgid "Password reset request has been sent. Please check your email."
11805
11808
  msgstr "已发送密码重置请求。请查看电子邮件。"
11806
11809
 
@@ -512,9 +512,6 @@ msgstr "显示选定测量的当前值的筒仓"
512
512
  msgid "A table display of a collection of data points"
513
513
  msgstr "以表的形式显示一组数据点"
514
514
 
515
- msgid "A user managed via your authorization server cannot change the password of the user."
516
- msgstr "通过您的授权服务器管理的用户无法更改该用户的密码。"
517
-
518
515
  msgid "ACCEPTED"
519
516
  msgstr "已接受"
520
517
 
@@ -6795,6 +6792,9 @@ msgstr "未能保存。请重试。"
6795
6792
  msgid "Failed to search for address."
6796
6793
  msgstr "無法搜尋地址。"
6797
6794
 
6795
+ msgid "Failed to send password reset link."
6796
+ msgstr "發送密碼重置連結失敗。"
6797
+
6798
6798
  msgid "Failed to set package availability."
6799
6799
  msgstr "无法设置包可用性。"
6800
6800
 
@@ -11801,6 +11801,9 @@ msgstr "密碼重置邮件模板(地址未知时)"
11801
11801
  msgid "Password reset link expired. Please enter your email address to receive a new one."
11802
11802
  msgstr "密碼重置链接已过期。请输入您的电子邮件地址以接收新密码。"
11803
11803
 
11804
+ msgid "Password reset link sent."
11805
+ msgstr "已发送密码重置链接。"
11806
+
11804
11807
  msgid "Password reset request has been sent. Please check your email."
11805
11808
  msgstr "已发送密碼重置请求。请查看电子邮件。"
11806
11809
 
@@ -547,6 +547,20 @@
547
547
  </div>
548
548
  </div>
549
549
 
550
+ <div name="changePassword" class="m-t-16" ng-show="isChangePasswordVisible()">
551
+ <label>{{ 'Password' | translate }}</label>
552
+ <button class="btn btn-default" ng-click="changePassword()">{{ 'Change password' | translate }}</button>
553
+ </div>
554
+
555
+ <div
556
+ class="m-t-16"
557
+ ng-hide="isChangePasswordVisible() || !user.id || !user.email || vm.userHasExternalOrigin"
558
+ >
559
+ <label>{{ 'Reset password' | translate }}</label>
560
+ <button class="btn btn-default" ng-disabled="!user.enabled" ng-click="sendPasswordResetEmailToUser()">{{ 'Send link to
561
+ user' | translate }}</button>
562
+ </div>
563
+
550
564
  <div
551
565
  class="m-t-16"
552
566
  ng-hide="user.id"
@@ -599,7 +613,6 @@
599
613
  </div>
600
614
  </div>
601
615
 
602
-
603
616
  <div ng-hide="hideCustomProperties || noCustomPropertiesToDisplay">
604
617
  <div class="p-t-8 p-b-8">
605
618
  <button ng-click="customPropertiesCollapsed = !customPropertiesCollapsed" class="btn-clean d-block text-medium fit-w p-t-8 p-b-8">
@@ -643,36 +656,7 @@
643
656
  user="user"
644
657
  ></c8y-measurement-unit-preference>
645
658
 
646
-
647
659
  <div class="form-group m-t-16">
648
- <button
649
- class="btn-clean fit-w text-medium p-b-8 p-t-8"
650
- name="changePassword"
651
- type="button"
652
- ng-show="
653
- !disabledEdit &&
654
- changePasswordBtn &&
655
- !hideChangePassword &&
656
- !user.sendPasswordResetEmail &&
657
- userCanChangePasswordAndEmail
658
- "
659
- ng-click="resetPasswords(user)"
660
- >
661
- <i c8y-icon="{{!password.showPassword ? 'forward' : 'expand-arrow'}}" class="m-r-4"></i>
662
- <span
663
- title="{{ 'Change password' | translate }}"
664
- ng-show="!password.showPassword"
665
- >
666
- {{ 'Change password' | translate }}
667
- </span>
668
- <span
669
- title="{{ 'Cancel password change' | translate }}"
670
- ng-show="password.showPassword"
671
- >
672
- {{ 'Cancel password change' | translate }}
673
- </span>
674
- </button>
675
-
676
660
  <c8y-user-totp-revoke
677
661
  ng-if="vm.shouldEnableRevokeTOTPSecretButton()"
678
662
  [user]="user"
@@ -1 +1 @@
1
- function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}(()=>{function e(g,m,w,f,p,h,E,P,A,y,S,v,T){return e.$inject=["$scope","$q"],{restrict:"EA",scope:{user:"=",forms:"=",password:"=",hideUsername:"=?",hideActive:"=?",hideFirstName:"=?",hideLastName:"=?",hideEmail:"=?",hideTelephone:"=?",hideCustomProperties:"=?",hideTfaOption:"=?",hidePasswordReset:"=?",hideChangePassword:"=?",hideOwner:"=?",hideDelegate:"=?",disabledEdit:"=?",hideLanguage:"=?",userTfaEnforced:"=?",topLevelTfaEnforced:"=?"},templateUrl:":::PLUGIN_PATH:::/ui/user/editUser.directive.html",controller:e,controllerAs:"vm",link:function(e,t){$(t).find("input[name=email]").bind("blur",function(){e.emailWarning=!(e.user&&e.user.email)})}};function e(o,r){var e="maxlength",n=v("Messaging application is not subscribed."),s=["userOrigin"],i={NEWUSERNAME:{type:"validation",text:v('Username "new" is not allowed.')},PATTERN:{type:"pattern",text:v("Invalid pattern.")},PATTERN_PASSWORD:{type:"pattern",text:T.getString(A.validation.password.message)},PATTERN_USERNAME:{type:"pattern",text:T.getString(A.validation.user.message)},PATTERN_DISPLAYNAME:{type:"pattern",text:T.getString(A.validation.loginAlias.message)},SAME_AS_CURRENT_PASSWORD:{type:"same_as_current",text:v("New password can't be the same as current one.")},PASSWORD_MISSMATCH:{type:"password_missmatch",text:v("Passwords do not match.")},REQUIRED:{type:"required",text:v("This field is required.")},EMAIL:{type:"email",text:v("Invalid email address.")},PASSWORD_STRENGTH:{type:"password_strength",text:A.validation.passwordStrengthChecklist.message},INTERNATIONALPHONENUMBER_PHONE:{type:"internationalPhoneNumber",text:T.getString(A.validation.internationalPhoneNumber.message)},MAXLENGTH_FIRSTNAME:{type:e,text:"".concat(T.getString("Max length:")," 50")},MAXLENGTH_LASTNAME:{type:e,text:"".concat(T.getString("Max length:")," 50")},MAXLENGTH_USERNAME:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_DISPLAYNAME:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_PHONE:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_EMAIL:{type:e,text:"".concat(T.getString("Max length:")," 254")}},d=this,u=(_.assign(o,{confirmPassword:"",invalid:angular.bind(g,g.invalid,o.forms,"userForm"),isInvalidConfirmPassword:function(){var e=o.forms.userForm,t=e.password.$pristine,e=e.confirmPassword.$touched&&e.confirmPassword.$invalid;return!t&&e},changePasswordConfirm:function(){o.forms.userForm.confirmPassword&&o.forms.userForm.confirmPassword.$setValidity(i.PASSWORD_MISSMATCH.type,o.forms.userForm.confirmPassword.$viewValue===o.user.password)},getErrorFeedback:function(s){var n=o.forms.userForm[s]||{},a=[];return _.forEach(n.$error||{},function(e,t){var r;"parse"===t?o.forms.userForm.phone.$setValidity(t,!0):(t=t.toUpperCase(),r="".concat(t,"_").concat(s.toUpperCase()),e&&n.$touched&&(e=i[r]||i[t],a.push(T.getString(e.text))))}),a.join("<br>")},getUserCustomProperties:l,humanize:g.humanizeFragment,passwordRegex:A.validation.password.pattern,resetPasswords:function(e){var t=T.getString("A user managed via your authorization server cannot change the password of the user.");m.current().then(function(e){e=m.hasExternalOrigin(e);o.password.showPassword&&e&&S.add({text:t,type:"warning"})}),o.password.showPassword=!o.password.showPassword,e.passwordStrength=o.password.strength,e.password=null,o.confirmPassword=""},tfaAvailable:!1,delegateTo:function(){m.current().then(function(e){o.user.delegatedBy=e.id}),a()},undelegate:function(){o.user.delegatedBy=null,a()},setOwner:function(e){o.user.owner=e,d.isParentDropDownOpen=!1,d.ownerHiddenForm.$setDirty()},userCanChangePasswordAndEmail:!1,requirementsFulfilled:!0,onRequirementsFulfilledChange:function(e){e=o.requirementsFulfilled=e;e||o.forms.userForm.password.$setValidity(i.PATTERN_PASSWORD.type,!0),o.forms.userForm.password.$setValidity(i.PASSWORD_STRENGTH.type,e)}}),_.assign(d,{onToggleDropdown:function(e){e&&(d.ownerDropDownInitialized=!0)},twoFactorAuthenticationCheckboxDisabled:function(){return o.topLevelTfaEnforced||o.disabledEdit||"TOTP"===d.tfaStrategy||!o.smsMicroserviceAvailable||!o.notCurrentUser&&"SMS"===d.tfaStrategy},enforceTfaCheckboxDisbaled:function(){return o.topLevelTfaEnforced||o.disabledEdit||!o.notCurrentUser||c()},messagingWarningVisible:function(){return!o.smsMicroserviceAvailable&&"SMS"===d.tfaStrategy},shouldEnableRevokeTOTPSecretButton:c}),p.getStrongPasswordSettings().then(t),o.$watch("user",function(e,t){var s,a;e&&e!==t&&(a=!(s=e).id,o.password.strength=s.passwordStrength,o.changePasswordBtn=!o.password.showPassword,o.emailWarning=!s.email,o.smsWarningPopover=n,a&&(o.userPasswordAction="sendPasswordByEmail"),delete o.confirmPassword,o.notCurrentUser=null,t=/.*/,(e=s)&&!e.id&&(t=A.validation.user.pattern),o.userNamePattern=t,o.loginAliasPattern=A.validation.loginAlias.pattern,o.hideLanguage||w.get("language").then(function(e){e&&(o.user.language={name:P.getLanguageNativeName(e),code:e}),o.languages=_.map(h.getSupportedLanguages(),function(e){return Object.assign({name:P.getLanguageNativeName(e),code:e},{})})}),y.isActivatedFor("units-conversion")&&(o.unitsConversionActive=!0),r.all({tfaAvailable:m.isTfaAvailable(),smsMicroserviceAvailable:E.isAvailable({contextPath:"messaging"}),twoFactorAuthenticationEnabled:m.isTfaActive(s),tfaStrategy:m.getTfaStrategy(),isCurrentUser:m.checkIfCurrent(s)}).then(function(e){var t=e.tfaAvailable,r=e.smsMicroserviceAvailable,s=e.twoFactorAuthenticationEnabled,n=e.tfaStrategy,e=e.isCurrentUser;o.notCurrentUser=!e,o.tfaAvailable=t,o.smsMicroserviceAvailable=!!r,d.tfaStrategy=n,o.user.twoFactorAuthenticationEnabled=!a&&s,o.userCanChangePasswordAndEmail=a||!m.hasExternalOrigin(o.user)&&e}),o.hideOwner||(o.ownerEditDisabled=!1,m.current().then(function(e){var t=f.hasRole(e,"ROLE_USER_MANAGEMENT_ADMIN"),r=f.hasRole(e,"ROLE_USER_MANAGEMENT_CREATE");!t&&r&&(d.rootOwner=[e],d.currentOwner=e.id,d.defaultOwner=e,a)&&(o.ownerEditDisabled=!0,s.owner=d.currentOwner)})),o.noCustomPropertiesToDisplay=_.isEmpty(l(o.user)),u())}));function l(e){var r={};return e&&e.customProperties&&_.forEach(e.customProperties,function(e,t){s.includes(t)||(r[t]="object"===_typeof(e)?angular.toJson(e,!0):e)}),r}function t(e){var t=e.enforceStrength;o.passwordStrengthEnforced=t||e.strengthValidity}function a(){o.delegationHiddenForm.$setDirty()}function c(){return"TOTP"===d.tfaStrategy&&o.user.twoFactorAuthenticationEnabled}o.$watch("user.password",function(){o.forms.userForm&&o.forms.userForm.password&&o.forms.userForm.password.$setValidity(i.SAME_AS_CURRENT_PASSWORD.type,!o.notCurrentUser&&!m.isCurrentPassword(o.forms.userForm.password.$viewValue)||o.notCurrentUser)}),o.$watch("userPasswordAction",function(e,t){e!==t&&(t={setUserPasswordAndForceToReset:{sendPasswordResetEmail:!1,shouldResetPassword:!0,showPassword:!0},setUserPassword:{sendPasswordResetEmail:!1,shouldResetPassword:!1,showPassword:!0},sendPasswordByEmail:{sendPasswordResetEmail:!0,shouldResetPassword:!1,showPassword:!1}}[e])&&(o.user.sendPasswordResetEmail=t.sendPasswordResetEmail,o.user.shouldResetPassword=t.shouldResetPassword,o.password.showPassword=t.showPassword)})}}e.$inject=["c8yBase","c8yUser","c8yUserPreferences","c8yPermissions","c8yLoginOptions","c8yLocales","c8yApplication","LocalesUtil","c8yConfig","c8yBeta","c8yAlert","gettext","gettextCatalog"],angular.module("c8y.ui").directive("c8yEditUser",e).directive("c8yUiEditUser",e)})();
1
+ function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}(()=>{function e(g,m,f,w,p,h,E,P,A,y,S,v,T,R){return e.$inject=["$scope","$q"],{restrict:"EA",scope:{user:"=",forms:"=",password:"=",hideUsername:"=?",hideActive:"=?",hideFirstName:"=?",hideLastName:"=?",hideEmail:"=?",hideTelephone:"=?",hideCustomProperties:"=?",hideTfaOption:"=?",hidePasswordReset:"=?",hideChangePassword:"=?",hideOwner:"=?",hideDelegate:"=?",disabledEdit:"=?",hideLanguage:"=?",userTfaEnforced:"=?",topLevelTfaEnforced:"=?"},templateUrl:":::PLUGIN_PATH:::/ui/user/editUser.directive.html",controller:e,controllerAs:"vm",link:function(e,t){$(t).find("input[name=email]").bind("blur",function(){e.emailWarning=!(e.user&&e.user.email)})}};function e(o,s){var e="maxlength",n=v("Messaging application is not subscribed."),r=["userOrigin"],i={NEWUSERNAME:{type:"validation",text:v('Username "new" is not allowed.')},PATTERN:{type:"pattern",text:v("Invalid pattern.")},PATTERN_PASSWORD:{type:"pattern",text:T.getString(A.validation.password.message)},PATTERN_USERNAME:{type:"pattern",text:T.getString(A.validation.user.message)},PATTERN_DISPLAYNAME:{type:"pattern",text:T.getString(A.validation.loginAlias.message)},SAME_AS_CURRENT_PASSWORD:{type:"same_as_current",text:v("New password can't be the same as current one.")},PASSWORD_MISSMATCH:{type:"password_missmatch",text:v("Passwords do not match.")},REQUIRED:{type:"required",text:v("This field is required.")},EMAIL:{type:"email",text:v("Invalid email address.")},PASSWORD_STRENGTH:{type:"password_strength",text:A.validation.passwordStrengthChecklist.message},INTERNATIONALPHONENUMBER_PHONE:{type:"internationalPhoneNumber",text:T.getString(A.validation.internationalPhoneNumber.message)},MAXLENGTH_FIRSTNAME:{type:e,text:"".concat(T.getString("Max length:")," 50")},MAXLENGTH_LASTNAME:{type:e,text:"".concat(T.getString("Max length:")," 50")},MAXLENGTH_USERNAME:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_DISPLAYNAME:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_PHONE:{type:e,text:"".concat(T.getString("Max length:")," 254")},MAXLENGTH_EMAIL:{type:e,text:"".concat(T.getString("Max length:")," 254")}},d=this,u=(_.assign(o,{confirmPassword:"",invalid:angular.bind(g,g.invalid,o.forms,"userForm"),isInvalidConfirmPassword:function(){var e=o.forms.userForm,t=e.password.$pristine,e=e.confirmPassword.$touched&&e.confirmPassword.$invalid;return!t&&e},changePasswordConfirm:function(){o.forms.userForm.confirmPassword&&o.forms.userForm.confirmPassword.$setValidity(i.PASSWORD_MISSMATCH.type,o.forms.userForm.confirmPassword.$viewValue===o.user.password)},getErrorFeedback:function(r){var n=o.forms.userForm[r]||{},a=[];return _.forEach(n.$error||{},function(e,t){var s;"parse"===t?o.forms.userForm.phone.$setValidity(t,!0):(t=t.toUpperCase(),s="".concat(t,"_").concat(r.toUpperCase()),e&&n.$touched&&(e=i[s]||i[t],a.push(T.getString(e.text))))}),a.join("<br>")},getUserCustomProperties:l,humanize:g.humanizeFragment,changePassword:function(){R.changeCurrentUserPassword()},isChangePasswordVisible:function(){return!o.disabledEdit&&o.changePasswordBtn&&!o.hideChangePassword&&o.user&&!o.user.sendPasswordResetEmail&&o.userCanChangePasswordAndEmail},passwordRegex:A.validation.password.pattern,tfaAvailable:!1,delegateTo:function(){m.current().then(function(e){o.user.delegatedBy=e.id}),a()},undelegate:function(){o.user.delegatedBy=null,a()},setOwner:function(e){o.user.owner=e,d.isParentDropDownOpen=!1,d.ownerHiddenForm.$setDirty()},userCanChangePasswordAndEmail:!1,requirementsFulfilled:!0,onRequirementsFulfilledChange:function(e){e=o.requirementsFulfilled=e;e||o.forms.userForm.password.$setValidity(i.PATTERN_PASSWORD.type,!0),o.forms.userForm.password.$setValidity(i.PASSWORD_STRENGTH.type,e)}}),_.assign(d,{onToggleDropdown:function(e){e&&(d.ownerDropDownInitialized=!0)},twoFactorAuthenticationCheckboxDisabled:function(){return o.topLevelTfaEnforced||o.disabledEdit||"TOTP"===d.tfaStrategy||!o.smsMicroserviceAvailable||!o.notCurrentUser&&"SMS"===d.tfaStrategy},enforceTfaCheckboxDisbaled:function(){return o.topLevelTfaEnforced||o.disabledEdit||!o.notCurrentUser||c()},messagingWarningVisible:function(){return!o.smsMicroserviceAvailable&&"SMS"===d.tfaStrategy},shouldEnableRevokeTOTPSecretButton:c}),p.getStrongPasswordSettings().then(t),o.$watch("user",function(e,t){var r,a;e&&e!==t&&(a=!(r=e).id,o.password.strength=r.passwordStrength,o.changePasswordBtn=!o.password.showPassword,o.emailWarning=!r.email,o.smsWarningPopover=n,a&&(o.userPasswordAction="sendPasswordByEmail"),delete o.confirmPassword,o.notCurrentUser=null,t=/.*/,(e=r)&&!e.id&&(t=A.validation.user.pattern),o.userNamePattern=t,o.loginAliasPattern=A.validation.loginAlias.pattern,o.hideLanguage||f.get("language").then(function(e){e&&(o.user.language={name:P.getLanguageNativeName(e),code:e}),o.languages=_.map(h.getSupportedLanguages(),function(e){return Object.assign({name:P.getLanguageNativeName(e),code:e},{})})}),y.isActivatedFor("units-conversion")&&(o.unitsConversionActive=!0),s.all({tfaAvailable:m.isTfaAvailable(),smsMicroserviceAvailable:E.isAvailable({contextPath:"messaging"}),twoFactorAuthenticationEnabled:m.isTfaActive(r),tfaStrategy:m.getTfaStrategy(),isCurrentUser:m.checkIfCurrent(r)}).then(function(e){var t=e.tfaAvailable,s=e.smsMicroserviceAvailable,r=e.twoFactorAuthenticationEnabled,n=e.tfaStrategy,e=e.isCurrentUser;o.notCurrentUser=!e,o.tfaAvailable=t,o.smsMicroserviceAvailable=!!s,d.tfaStrategy=n,o.user.twoFactorAuthenticationEnabled=!a&&r,o.userCanChangePasswordAndEmail=a||!m.hasExternalOrigin(o.user)&&e,d.userHasExternalOrigin=m.hasExternalOrigin(o.user)}),o.hideOwner||(o.ownerEditDisabled=!1,m.current().then(function(e){var t=w.hasRole(e,"ROLE_USER_MANAGEMENT_ADMIN"),s=w.hasRole(e,"ROLE_USER_MANAGEMENT_CREATE");!t&&s&&(d.rootOwner=[e],d.currentOwner=e.id,d.defaultOwner=e,a)&&(o.ownerEditDisabled=!0,r.owner=d.currentOwner)})),o.noCustomPropertiesToDisplay=_.isEmpty(l(o.user)),u())}));function l(e){var s={};return e&&e.customProperties&&_.forEach(e.customProperties,function(e,t){r.includes(t)||(s[t]="object"===_typeof(e)?angular.toJson(e,!0):e)}),s}function t(e){var t=e.enforceStrength;o.passwordStrengthEnforced=t||e.strengthValidity}function a(){o.delegationHiddenForm.$setDirty()}function c(){return"TOTP"===d.tfaStrategy&&o.user.twoFactorAuthenticationEnabled}o.$watch("user.password",function(){o.forms.userForm&&o.forms.userForm.password&&o.forms.userForm.password.$setValidity(i.SAME_AS_CURRENT_PASSWORD.type,!o.notCurrentUser&&!m.isCurrentPassword(o.forms.userForm.password.$viewValue)||o.notCurrentUser)}),o.$watch("userPasswordAction",function(e,t){e!==t&&(t={setUserPasswordAndForceToReset:{sendPasswordResetEmail:!1,shouldResetPassword:!0,showPassword:!0},setUserPassword:{sendPasswordResetEmail:!1,shouldResetPassword:!1,showPassword:!0},sendPasswordByEmail:{sendPasswordResetEmail:!0,shouldResetPassword:!1,showPassword:!1}}[e])&&(o.user.sendPasswordResetEmail=t.sendPasswordResetEmail,o.user.shouldResetPassword=t.shouldResetPassword,o.password.showPassword=t.showPassword)}),o.sendPasswordResetEmailToUser=_.debounce(function(){o.user&&o.user.email&&m.sendPasswordResetMail(o.user.email,o.user.tenantId).then(function(){S.success(v("Password reset link sent."))}).catch(function(){S.danger(v("Failed to send password reset link."))})},300)}}e.$inject=["c8yBase","c8yUser","c8yUserPreferences","c8yPermissions","c8yLoginOptions","c8yLocales","c8yApplication","LocalesUtil","c8yConfig","c8yBeta","c8yAlert","gettext","gettextCatalog","c8yModalService"],angular.module("c8y.ui").directive("c8yEditUser",e).directive("c8yUiEditUser",e)})();
@@ -1 +1 @@
1
- (()=>{function e(e,i){e.when("/device/:deviceId",{templateUrl:":::PLUGIN_PATH:::/views/index.html",priority:900,name:i("Measurements"),icon:"line-chart",controller:t}),e.when("/service/:deviceId",{templateUrl:":::PLUGIN_PATH:::/views/index.html",priority:900,name:i("Measurements"),icon:"line-chart",controller:t})}function t(i,e,t){i.device={},t.detailCached(e.deviceId).then(function(e){e=e.data;i.device=e})}t.$inject=["$scope","$routeParams","c8yDevices"],e.$inject=["c8yViewsProvider","gettext"],angular.module("c8y.parts.measurements",[]).config(e)})();
1
+ (()=>{function e(e,t){e.when("/device/:deviceId",{templateUrl:":::PLUGIN_PATH:::/views/index.html",priority:900,name:t("Measurements"),icon:"line-chart",controller:i,showIf:n}),e.when("/service/:deviceId",{templateUrl:":::PLUGIN_PATH:::/views/index.html",priority:900,name:t("Measurements"),icon:"line-chart",controller:i})}function i(t,e,i){t.device={},i.detailCached(e.deviceId).then(function(e){e=e.data;t.device=e})}function n(e){return e.getFeatureStatePromise("ui.datapoint-explorer.v2").then(function(e){return!e})}n.$inject=["c8yFeatureCacheService"],i.$inject=["$scope","$routeParams","c8yDevices"],e.$inject=["c8yViewsProvider","gettext"],angular.module("c8y.parts.measurements",[]).config(e)})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@c8y/ng1-modules",
3
- "version": "1022.16.2",
3
+ "version": "1022.21.3",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Cumulocity",
6
6
  "description": "AngularJS modules for Cumulocity IoT applications.",