@c8y/ngx-components 1018.503.1 → 1018.503.22

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.
Files changed (149) hide show
  1. package/core/common/ApplicationOptions.d.ts +4 -2
  2. package/core/common/files.service.d.ts +10 -2
  3. package/core/common/global-config.service.d.ts +1 -1
  4. package/core/common/permissions.service.d.ts +67 -0
  5. package/core/common/tenant-ui.service.d.ts +1 -1
  6. package/core/i18n/pattern-messages.data.d.ts +20 -20
  7. package/esm2020/assets-navigator/asset-node.service.mjs +5 -4
  8. package/esm2020/auth-configuration/auth-configuration.guard.mjs +5 -2
  9. package/esm2020/auth-configuration/factories/navigation.factory.mjs +3 -3
  10. package/esm2020/cockpit-config/cockpit-config.guard.mjs +2 -2
  11. package/esm2020/cockpit-config/cockpit-config.service.mjs +2 -2
  12. package/esm2020/context-dashboard/add-dashboard.factory.mjs +6 -3
  13. package/esm2020/context-dashboard/context-dashboard.component.mjs +2 -2
  14. package/esm2020/context-dashboard/context-dashboard.service.mjs +3 -3
  15. package/esm2020/context-dashboard/dashboard-detail.component.mjs +2 -2
  16. package/esm2020/context-dashboard/report-dashboard/report-dashboard-list.component.mjs +3 -3
  17. package/esm2020/core/common/ApplicationOptions.mjs +1 -1
  18. package/esm2020/core/common/files.service.mjs +20 -4
  19. package/esm2020/core/common/global-config.service.mjs +7 -2
  20. package/esm2020/core/common/permissions.service.mjs +68 -1
  21. package/esm2020/core/common/tenant-ui.service.mjs +3 -2
  22. package/esm2020/core/common/user-preferences/user-preferences.service.mjs +6 -2
  23. package/esm2020/core/docs/support-outlet/support-outlet.component.mjs +3 -2
  24. package/esm2020/core/drop-area/drop-area.component.mjs +3 -1
  25. package/esm2020/core/i18n/pattern-messages.data.mjs +21 -21
  26. package/esm2020/core/setup/setup.service.mjs +2 -2
  27. package/esm2020/ecosystem/application-properties/application-properties.component.mjs +2 -2
  28. package/esm2020/ecosystem/application-properties/subscription-modal/subscription-modal.component.mjs +3 -3
  29. package/esm2020/ecosystem/ecosystem-navigation.factory.mjs +3 -3
  30. package/esm2020/ecosystem/packages/package-list/packages-list.component.mjs +2 -2
  31. package/esm2020/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.mjs +2 -2
  32. package/esm2020/files-repository/files-repository.guard.mjs +5 -3
  33. package/esm2020/location/location.component.mjs +20 -13
  34. package/esm2020/map/cluster-map.component.mjs +19 -11
  35. package/esm2020/map/cluster-map.mjs +8 -3
  36. package/esm2020/map/map-status.component.mjs +19 -5
  37. package/esm2020/map/map.component.mjs +10 -10
  38. package/esm2020/map/map.model.mjs +1 -19
  39. package/esm2020/map/map.service.mjs +24 -1
  40. package/esm2020/protocol-lwm2m/components/bootstrap-parameters/lwm2m-bootstrap-parameters.component.mjs +2 -2
  41. package/esm2020/protocol-lwm2m/components/configuration/typed-forms/form-wrapper-base.component.mjs +2 -2
  42. package/esm2020/register-device/register-device-navigation.factory.mjs +3 -3
  43. package/esm2020/replace-device/replace-device.service.mjs +5 -5
  44. package/esm2020/reports/export-schedules.component.mjs +3 -3
  45. package/esm2020/repository/configuration/device-tab/configuration-preview.component.mjs +4 -4
  46. package/esm2020/sms-gateway/sms-gateway.guard.mjs +2 -2
  47. package/esm2020/sms-gateway/sms-gateway.module.mjs +6 -6
  48. package/esm2020/sub-assets/add-group/add-group.component.mjs +2 -2
  49. package/esm2020/sub-assets/asset-properties-item.component.mjs +6 -6
  50. package/esm2020/sub-assets/groups.component.mjs +2 -2
  51. package/esm2020/sub-assets/sub-assets.component.mjs +2 -2
  52. package/esm2020/sub-assets/sub-assets.service.mjs +16 -10
  53. package/esm2020/tenants/tenant-list/tenant-list.component.mjs +12 -7
  54. package/esm2020/upgrade/ng1/downgraded.services.mjs +3 -2
  55. package/esm2020/upgrade/ng1/index.mjs +4 -3
  56. package/esm2020/widgets/cockpit/index.mjs +1 -1
  57. package/esm2020/widgets/device-management/index.mjs +1 -1
  58. package/fesm2015/c8y-ngx-components-assets-navigator.mjs +4 -3
  59. package/fesm2015/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  60. package/fesm2015/c8y-ngx-components-auth-configuration.mjs +7 -4
  61. package/fesm2015/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  62. package/fesm2015/c8y-ngx-components-cockpit-config.mjs +3 -3
  63. package/fesm2015/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  64. package/fesm2015/c8y-ngx-components-context-dashboard.mjs +12 -9
  65. package/fesm2015/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  66. package/fesm2015/c8y-ngx-components-ecosystem.mjs +8 -8
  67. package/fesm2015/c8y-ngx-components-ecosystem.mjs.map +1 -1
  68. package/fesm2015/c8y-ngx-components-files-repository.mjs +5 -3
  69. package/fesm2015/c8y-ngx-components-files-repository.mjs.map +1 -1
  70. package/fesm2015/c8y-ngx-components-location.mjs +20 -13
  71. package/fesm2015/c8y-ngx-components-location.mjs.map +1 -1
  72. package/fesm2015/c8y-ngx-components-map.mjs +174 -142
  73. package/fesm2015/c8y-ngx-components-map.mjs.map +1 -1
  74. package/fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs +2 -2
  75. package/fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs.map +1 -1
  76. package/fesm2015/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs +1 -1
  77. package/fesm2015/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs.map +1 -1
  78. package/fesm2015/c8y-ngx-components-register-device.mjs +3 -3
  79. package/fesm2015/c8y-ngx-components-register-device.mjs.map +1 -1
  80. package/fesm2015/c8y-ngx-components-replace-device.mjs +5 -5
  81. package/fesm2015/c8y-ngx-components-replace-device.mjs.map +1 -1
  82. package/fesm2015/c8y-ngx-components-reports.mjs +2 -2
  83. package/fesm2015/c8y-ngx-components-reports.mjs.map +1 -1
  84. package/fesm2015/c8y-ngx-components-repository-configuration.mjs +3 -3
  85. package/fesm2015/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  86. package/fesm2015/c8y-ngx-components-sms-gateway.mjs +6 -6
  87. package/fesm2015/c8y-ngx-components-sms-gateway.mjs.map +1 -1
  88. package/fesm2015/c8y-ngx-components-sub-assets.mjs +24 -18
  89. package/fesm2015/c8y-ngx-components-sub-assets.mjs.map +1 -1
  90. package/fesm2015/c8y-ngx-components-tenants.mjs +11 -6
  91. package/fesm2015/c8y-ngx-components-tenants.mjs.map +1 -1
  92. package/fesm2015/c8y-ngx-components-upgrade.mjs +4 -2
  93. package/fesm2015/c8y-ngx-components-upgrade.mjs.map +1 -1
  94. package/fesm2015/c8y-ngx-components-widgets-cockpit.mjs.map +1 -1
  95. package/fesm2015/c8y-ngx-components-widgets-device-management.mjs.map +1 -1
  96. package/fesm2015/c8y-ngx-components.mjs +121 -28
  97. package/fesm2015/c8y-ngx-components.mjs.map +1 -1
  98. package/fesm2020/c8y-ngx-components-assets-navigator.mjs +4 -3
  99. package/fesm2020/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  100. package/fesm2020/c8y-ngx-components-auth-configuration.mjs +7 -4
  101. package/fesm2020/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  102. package/fesm2020/c8y-ngx-components-cockpit-config.mjs +3 -3
  103. package/fesm2020/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  104. package/fesm2020/c8y-ngx-components-context-dashboard.mjs +12 -9
  105. package/fesm2020/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  106. package/fesm2020/c8y-ngx-components-ecosystem.mjs +8 -8
  107. package/fesm2020/c8y-ngx-components-ecosystem.mjs.map +1 -1
  108. package/fesm2020/c8y-ngx-components-files-repository.mjs +5 -3
  109. package/fesm2020/c8y-ngx-components-files-repository.mjs.map +1 -1
  110. package/fesm2020/c8y-ngx-components-location.mjs +20 -13
  111. package/fesm2020/c8y-ngx-components-location.mjs.map +1 -1
  112. package/fesm2020/c8y-ngx-components-map.mjs +174 -142
  113. package/fesm2020/c8y-ngx-components-map.mjs.map +1 -1
  114. package/fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs +2 -2
  115. package/fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs.map +1 -1
  116. package/fesm2020/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs +1 -1
  117. package/fesm2020/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs.map +1 -1
  118. package/fesm2020/c8y-ngx-components-register-device.mjs +3 -3
  119. package/fesm2020/c8y-ngx-components-register-device.mjs.map +1 -1
  120. package/fesm2020/c8y-ngx-components-replace-device.mjs +5 -5
  121. package/fesm2020/c8y-ngx-components-replace-device.mjs.map +1 -1
  122. package/fesm2020/c8y-ngx-components-reports.mjs +2 -2
  123. package/fesm2020/c8y-ngx-components-reports.mjs.map +1 -1
  124. package/fesm2020/c8y-ngx-components-repository-configuration.mjs +3 -3
  125. package/fesm2020/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  126. package/fesm2020/c8y-ngx-components-sms-gateway.mjs +6 -6
  127. package/fesm2020/c8y-ngx-components-sms-gateway.mjs.map +1 -1
  128. package/fesm2020/c8y-ngx-components-sub-assets.mjs +24 -18
  129. package/fesm2020/c8y-ngx-components-sub-assets.mjs.map +1 -1
  130. package/fesm2020/c8y-ngx-components-tenants.mjs +11 -6
  131. package/fesm2020/c8y-ngx-components-tenants.mjs.map +1 -1
  132. package/fesm2020/c8y-ngx-components-upgrade.mjs +4 -2
  133. package/fesm2020/c8y-ngx-components-upgrade.mjs.map +1 -1
  134. package/fesm2020/c8y-ngx-components-widgets-cockpit.mjs.map +1 -1
  135. package/fesm2020/c8y-ngx-components-widgets-device-management.mjs.map +1 -1
  136. package/fesm2020/c8y-ngx-components.mjs +121 -28
  137. package/fesm2020/c8y-ngx-components.mjs.map +1 -1
  138. package/locales/locales.pot +3 -0
  139. package/location/location.component.d.ts +2 -2
  140. package/map/cluster-map.component.d.ts +3 -1
  141. package/map/map-status.component.d.ts +12 -1
  142. package/map/map.component.d.ts +1 -1
  143. package/map/map.model.d.ts +0 -1
  144. package/map/map.service.d.ts +6 -0
  145. package/package.json +1 -1
  146. package/tenants/tenant-list/tenant-list.component.d.ts +4 -2
  147. package/upgrade/ng1/downgraded.services.d.ts +1 -0
  148. package/widgets/cockpit/index.d.ts +2 -1
  149. package/widgets/device-management/index.d.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-sms-gateway.mjs","sources":["../../sms-gateway/pattern-messages.data.ts","../../sms-gateway/sms-gateway.guard.ts","../../sms-gateway/sms-gateway.module.ts","../../sms-gateway/c8y-ngx-components-sms-gateway.ts"],"sourcesContent":["import { gettext } from '@c8y/ngx-components';\n\nexport const MESSAGES = {\n '^Sender name$': {\n gettext: gettext('Sender name')\n },\n '^Sender name used for sent SMS$': {\n gettext: gettext('Sender name used for sent SMS')\n },\n '^Sender address$': {\n gettext: gettext('Sender address')\n },\n '^Sender address used for sent SMS$': {\n gettext: gettext('Sender address used for sent SMS')\n },\n '^Username$': {\n gettext: gettext('Username')\n },\n '^Password$': {\n gettext: gettext('Password')\n },\n '^Licence key$': {\n gettext: gettext('License key')\n },\n '^Key$': {\n gettext: gettext('Key')\n },\n '^API base URL$': {\n gettext: gettext('API base URL')\n },\n '^API URL$': {\n gettext: gettext('API URL')\n },\n '^oauth$': {\n gettext: gettext('OAuth')\n },\n '^basic$': {\n gettext: gettext('Basic')\n },\n '^Authentication method$': {\n gettext: gettext('Authentication method')\n },\n '^Defines which authentication method is used with the provider$': {\n gettext: gettext('Defines which authentication method is used with the provider')\n },\n '^Static headers$': {\n gettext: gettext('Static headers')\n },\n '^Static headers that should be added to requests towards the provider$': {\n gettext: gettext('Static headers that should be added to requests towards the provider')\n },\n '^OAuth token URL$': {\n gettext: gettext('OAuth token URL')\n },\n '^URL where the OAuth token is requested from (required if OAuth method is chosen)$': {\n gettext: gettext(\n 'URL where the OAuth token is requested from (required if OAuth method is selected)'\n )\n },\n '^OAuth toke mime type$': {\n gettext: gettext('OAuth token mime type')\n },\n '^Overrides the OAuth token response mime type$': {\n gettext: gettext('Overrides the OAuth token response mime type')\n },\n '^OAuth access toke type$': {\n gettext: gettext('OAuth access token type')\n },\n '^Overrides the OAuth access token type$': {\n gettext: gettext('Overrides the OAuth access token type')\n },\n '^Global configuration$': {\n gettext: gettext('Global configuration')\n },\n '^Enables or disables if the settings may be used globally for all tenants (Only possible in management tenant)$':\n {\n gettext: gettext(\n 'Enables or disables the settings globally for all tenants (only possible in management tenant)'\n )\n },\n '^API key$': {\n gettext: gettext('API key')\n },\n '^Inherit to subtenants$': {\n gettext: gettext('Inherit to subtenants')\n },\n \"^Enables or disables if this tenant's configuration may be inherited to subtenants$\": {\n gettext: gettext(\n 'Enables or disables the option to inherit the tenant configuration to subtenants'\n )\n },\n '^Login$': {\n gettext: gettext('Login')\n },\n '^Source business unit ID$': {\n gettext: gettext('Source business unit ID')\n },\n '^Client ID$': {\n gettext: gettext('Client ID')\n },\n '^Client secret$': {\n gettext: gettext('Client secret')\n }\n};\n","import { Injectable } from '@angular/core';\nimport { CanActivate } from '@angular/router';\nimport { Permissions, AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SmsGatewayGuard implements CanActivate {\n private static readonly applicationName = 'sms-gateway';\n private showSMSProvider: Promise<boolean>;\n\n constructor(private permissions: Permissions, private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSMSProvider === undefined) {\n const hasRole: Promise<boolean> = Promise.resolve(this.permissions.hasRole('ROLE_SMS_READ'));\n\n this.showSMSProvider = hasRole.then(\n (hasPermissions: boolean) =>\n hasPermissions && this.appState.isApplicationAvailable(SmsGatewayGuard.applicationName)\n );\n }\n\n return this.showSMSProvider;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { gettext, hookPatternMessages, ProviderConfigurationModule } from '@c8y/ngx-components';\nimport { MESSAGES } from './pattern-messages.data';\nimport { SmsGatewayGuard } from './sms-gateway.guard';\n\n@NgModule({\n imports: [\n ProviderConfigurationModule.config([\n {\n navigation: {\n label: gettext('SMS provider'),\n path: 'smsgateway',\n icon: 'envelope-o',\n parent: gettext('Settings'),\n priority: 1000,\n canActivate: [SmsGatewayGuard]\n },\n layout: {\n pageTitle: gettext('SMS provider'),\n cardTitle: gettext('Credentials'),\n description: gettext(\n 'Enter your credentials from your SMS provider. This enables platform features that utilize SMS services (for example, two-factor authentication and user notifications).'\n ),\n providerName: gettext('SMS provider'),\n providerNamePlaceholder: gettext('Select or type to filter providers'),\n providerNameNoMatchesHint: gettext('Select one of the existing providers.'),\n deleteRoles: ['ROLE_SMS_ADMIN'],\n deleteBtnLabel: gettext('Delete'),\n saveRoles: ['ROLE_SMS_ADMIN'],\n saveBtnLabel: gettext('Save'),\n configurationUpdatedSuccessMsg: gettext('Credentials updated.'),\n deleteConfigurationModalTitle: gettext('Delete credentials'),\n deleteConfigurationModalBody: gettext(\n `You are about to delete SMS provider credentials. Deleting credentials will lock out any users with SMS-based two-factor authentication and deactivate the SMS-based smart rules and device communication. Do you want to proceed?`\n ),\n deleteConfigurationModalOkBtnLabel: gettext('Delete'),\n configurationDeletedSuccessMsg: gettext('Credentials deleted.')\n },\n endpoint: {\n definitionsEndpoint: {\n baseUrl: 'service/messaging/providers',\n listUrl: 'definitions'\n },\n configurationEndpoint: {\n baseUrl: 'service/messaging/providers',\n listUrl: 'configuration'\n }\n }\n }\n ])\n ],\n providers: [SmsGatewayGuard, hookPatternMessages(MESSAGES)]\n})\nexport class SmsGatewayModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-sms-gateway.mjs","sources":["../../sms-gateway/pattern-messages.data.ts","../../sms-gateway/sms-gateway.guard.ts","../../sms-gateway/sms-gateway.module.ts","../../sms-gateway/c8y-ngx-components-sms-gateway.ts"],"sourcesContent":["import { gettext } from '@c8y/ngx-components';\n\nexport const MESSAGES = {\n '^Sender name$': {\n gettext: gettext('Sender name')\n },\n '^Sender name used for sent SMS$': {\n gettext: gettext('Sender name used for sent SMS')\n },\n '^Sender address$': {\n gettext: gettext('Sender address')\n },\n '^Sender address used for sent SMS$': {\n gettext: gettext('Sender address used for sent SMS')\n },\n '^Username$': {\n gettext: gettext('Username')\n },\n '^Password$': {\n gettext: gettext('Password')\n },\n '^Licence key$': {\n gettext: gettext('License key')\n },\n '^Key$': {\n gettext: gettext('Key')\n },\n '^API base URL$': {\n gettext: gettext('API base URL')\n },\n '^API URL$': {\n gettext: gettext('API URL')\n },\n '^oauth$': {\n gettext: gettext('OAuth')\n },\n '^basic$': {\n gettext: gettext('Basic')\n },\n '^Authentication method$': {\n gettext: gettext('Authentication method')\n },\n '^Defines which authentication method is used with the provider$': {\n gettext: gettext('Defines which authentication method is used with the provider')\n },\n '^Static headers$': {\n gettext: gettext('Static headers')\n },\n '^Static headers that should be added to requests towards the provider$': {\n gettext: gettext('Static headers that should be added to requests towards the provider')\n },\n '^OAuth token URL$': {\n gettext: gettext('OAuth token URL')\n },\n '^URL where the OAuth token is requested from (required if OAuth method is chosen)$': {\n gettext: gettext(\n 'URL where the OAuth token is requested from (required if OAuth method is selected)'\n )\n },\n '^OAuth toke mime type$': {\n gettext: gettext('OAuth token mime type')\n },\n '^Overrides the OAuth token response mime type$': {\n gettext: gettext('Overrides the OAuth token response mime type')\n },\n '^OAuth access toke type$': {\n gettext: gettext('OAuth access token type')\n },\n '^Overrides the OAuth access token type$': {\n gettext: gettext('Overrides the OAuth access token type')\n },\n '^Global configuration$': {\n gettext: gettext('Global configuration')\n },\n '^Enables or disables if the settings may be used globally for all tenants (Only possible in management tenant)$':\n {\n gettext: gettext(\n 'Enables or disables the settings globally for all tenants (only possible in management tenant)'\n )\n },\n '^API key$': {\n gettext: gettext('API key')\n },\n '^Inherit to subtenants$': {\n gettext: gettext('Inherit to subtenants')\n },\n \"^Enables or disables if this tenant's configuration may be inherited to subtenants$\": {\n gettext: gettext(\n 'Enables or disables the option to inherit the tenant configuration to subtenants'\n )\n },\n '^Login$': {\n gettext: gettext('Login')\n },\n '^Source business unit ID$': {\n gettext: gettext('Source business unit ID')\n },\n '^Client ID$': {\n gettext: gettext('Client ID')\n },\n '^Client secret$': {\n gettext: gettext('Client secret')\n }\n};\n","import { Injectable } from '@angular/core';\nimport { CanActivate } from '@angular/router';\nimport { Permissions, AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SmsGatewayGuard implements CanActivate {\n private static readonly applicationName = 'sms-gateway';\n private showSMSProvider: Promise<boolean>;\n\n constructor(\n private permissions: Permissions,\n private appState: AppStateService\n ) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSMSProvider === undefined) {\n const hasRole: Promise<boolean> = Promise.resolve(\n this.permissions.hasRole(Permissions.ROLE_SMS_READ)\n );\n\n this.showSMSProvider = hasRole.then(\n (hasPermissions: boolean) =>\n hasPermissions && this.appState.isApplicationAvailable(SmsGatewayGuard.applicationName)\n );\n }\n\n return this.showSMSProvider;\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n gettext,\n hookPatternMessages,\n ProviderConfigurationModule,\n Permissions\n} from '@c8y/ngx-components';\nimport { MESSAGES } from './pattern-messages.data';\nimport { SmsGatewayGuard } from './sms-gateway.guard';\n\n@NgModule({\n imports: [\n ProviderConfigurationModule.config([\n {\n navigation: {\n label: gettext('SMS provider'),\n path: 'smsgateway',\n icon: 'envelope-o',\n parent: gettext('Settings'),\n priority: 1000,\n canActivate: [SmsGatewayGuard]\n },\n layout: {\n pageTitle: gettext('SMS provider'),\n cardTitle: gettext('Credentials'),\n description: gettext(\n 'Enter your credentials from your SMS provider. This enables platform features that utilize SMS services (for example, two-factor authentication and user notifications).'\n ),\n providerName: gettext('SMS provider'),\n providerNamePlaceholder: gettext('Select or type to filter providers'),\n providerNameNoMatchesHint: gettext('Select one of the existing providers.'),\n deleteRoles: [Permissions.ROLE_SMS_ADMIN],\n deleteBtnLabel: gettext('Delete'),\n saveRoles: [Permissions.ROLE_SMS_ADMIN],\n saveBtnLabel: gettext('Save'),\n configurationUpdatedSuccessMsg: gettext('Credentials updated.'),\n deleteConfigurationModalTitle: gettext('Delete credentials'),\n deleteConfigurationModalBody: gettext(\n `You are about to delete SMS provider credentials. Deleting credentials will lock out any users with SMS-based two-factor authentication and deactivate the SMS-based smart rules and device communication. Do you want to proceed?`\n ),\n deleteConfigurationModalOkBtnLabel: gettext('Delete'),\n configurationDeletedSuccessMsg: gettext('Credentials deleted.')\n },\n endpoint: {\n definitionsEndpoint: {\n baseUrl: 'service/messaging/providers',\n listUrl: 'definitions'\n },\n configurationEndpoint: {\n baseUrl: 'service/messaging/providers',\n listUrl: 'configuration'\n }\n }\n }\n ])\n ],\n providers: [SmsGatewayGuard, hookPatternMessages(MESSAGES)]\n})\nexport class SmsGatewayModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, InjectionToken, Inject, EventEmitter, Input, Output, ViewChild, HostListener, NgModule, Optional, TemplateRef } from '@angular/core';
3
3
  import * as i3 from '@c8y/ngx-components';
4
- import { GroupFragment, gettext, BaseColumn, getBasicInputArrayFormFieldConfig, DataGridService, C8yStepper, CoreModule, hookRoute, Status, AbstractConfigurationStrategy, DATA_GRID_CONFIGURATION_CONTEXT, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, UserPreferencesConfigurationStrategy, DATA_GRID_CONFIGURATION_STRATEGY, DataGridComponent, CustomColumn, FilterMapperModule, ViewContext } from '@c8y/ngx-components';
4
+ import { GroupFragment, gettext, BaseColumn, getBasicInputArrayFormFieldConfig, DataGridService, Permissions, C8yStepper, CoreModule, hookRoute, Status, AbstractConfigurationStrategy, DATA_GRID_CONFIGURATION_CONTEXT, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, UserPreferencesConfigurationStrategy, DATA_GRID_CONFIGURATION_STRATEGY, DataGridComponent, CustomColumn, FilterMapperModule, ViewContext } from '@c8y/ngx-components';
5
5
  import * as i7 from '@c8y/ngx-components/device-grid';
6
6
  import { NameDeviceGridColumn, ModelDeviceGridColumn, SerialNumberDeviceGridColumn, RegistrationDateDeviceGridColumn, SystemIdDeviceGridColumn, ImeiDeviceGridColumn, AlarmsDeviceGridColumn, DeviceGridModule } from '@c8y/ngx-components/device-grid';
7
7
  import { __awaiter } from 'tslib';
@@ -337,28 +337,34 @@ class SubAssetsService extends DataGridService {
337
337
  }
338
338
  canEditGroup(group) {
339
339
  return __awaiter(this, void 0, void 0, function* () {
340
- return yield this.permissionsService.canEdit(['ROLE_INVENTORY_ADMIN'], group);
340
+ return yield this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN], group);
341
341
  });
342
342
  }
343
343
  canCreateGroup() {
344
344
  const currentUser = this.appState.currentUser.value;
345
345
  const hasAdminRole = this.user.hasAnyRole(currentUser, [
346
- 'ROLE_INVENTORY_ADMIN',
347
- 'ROLE_INVENTORY_CREATE'
346
+ Permissions.ROLE_INVENTORY_ADMIN,
347
+ Permissions.ROLE_INVENTORY_CREATE
348
348
  ]);
349
349
  return hasAdminRole;
350
350
  }
351
351
  canAssignDevice(group) {
352
352
  return __awaiter(this, void 0, void 0, function* () {
353
- return yield this.permissionsService.canEdit(['ROLE_INVENTORY_ADMIN'], group);
353
+ return yield this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN], group);
354
354
  });
355
355
  }
356
356
  canEditSmartGroup() {
357
- const SMART_GROUPS_ROLES_EDIT = ['ROLE_SMARTGROUP_UPDATE', 'ROLE_SMARTGROUP_ADMIN'];
357
+ const SMART_GROUPS_ROLES_EDIT = [
358
+ Permissions.ROLE_SMARTGROUP_UPDATE,
359
+ Permissions.ROLE_SMARTGROUP_ADMIN
360
+ ];
358
361
  return this.permissionsService.hasAnyRole(SMART_GROUPS_ROLES_EDIT);
359
362
  }
360
363
  canDeleteSmartGroup() {
361
- const SMART_GROUPS_ROLES_DELETE = ['ROLE_SMARTGROUP_ADMIN', 'ROLE_INVENTORY_ADMIN'];
364
+ const SMART_GROUPS_ROLES_DELETE = [
365
+ Permissions.ROLE_SMARTGROUP_ADMIN,
366
+ Permissions.ROLE_INVENTORY_ADMIN
367
+ ];
362
368
  return this.permissionsService.hasAnyRole(SMART_GROUPS_ROLES_DELETE);
363
369
  }
364
370
  isSmartGroup(group) {
@@ -367,9 +373,9 @@ class SubAssetsService extends DataGridService {
367
373
  isUsingInventoryRoles() {
368
374
  const currentUser = this.appState.currentUser.value;
369
375
  const hasAnyInventoryRole = this.user.hasAnyRole(currentUser, [
370
- 'ROLE_INVENTORY_ADMIN',
371
- 'ROLE_INVENTORY_READ',
372
- 'ROLE_INVENTORY_CREATE'
376
+ Permissions.ROLE_INVENTORY_ADMIN,
377
+ Permissions.ROLE_INVENTORY_READ,
378
+ Permissions.ROLE_INVENTORY_CREATE
373
379
  ]);
374
380
  return !hasAnyInventoryRole;
375
381
  }
@@ -527,7 +533,7 @@ class AddGroupComponent {
527
533
  this.subscription = this.onCancel.subscribe(() => this.resetStepper());
528
534
  this.canCreateGroup =
529
535
  this.subAssetsService.canCreateGroup() ||
530
- (yield this.permissionsService.canEdit(['ROLE_INVENTORY_ADMIN', 'ROLE_INVENTORY_CREATE'], {
536
+ (yield this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN, Permissions.ROLE_INVENTORY_CREATE], {
531
537
  id: this.currentGroupId
532
538
  }));
533
539
  this.canAssignDevice = yield this.subAssetsService.canAssignDevice({
@@ -655,8 +661,10 @@ class AssetPropertiesItemComponent {
655
661
  return __awaiter(this, void 0, void 0, function* () {
656
662
  if (this.file) {
657
663
  try {
658
- const imageFile = yield this.filesService.getFile(this.file);
659
- this.previewImage = yield this.getPreviewIfImage(imageFile);
664
+ if (this.filesService.fileNamesHaveValidExtension(this.file.name, 'image')) {
665
+ const imageFile = yield this.filesService.getFile(this.file);
666
+ this.previewImage = yield this.getPreviewIfImage(imageFile);
667
+ }
660
668
  }
661
669
  catch (ex) {
662
670
  this.alert.danger(gettext('File could not be loaded.'));
@@ -696,9 +704,7 @@ class AssetPropertiesItemComponent {
696
704
  }
697
705
  getPreviewIfImage(imageFile) {
698
706
  return __awaiter(this, void 0, void 0, function* () {
699
- if (this.filesService.haveValidExtensions(imageFile, 'image')) {
700
- return this.filesService.toBase64(imageFile);
701
- }
707
+ return this.filesService.toBase64(imageFile);
702
708
  });
703
709
  }
704
710
  }
@@ -2023,7 +2029,7 @@ class GroupsComponent {
2023
2029
  this.columns = [];
2024
2030
  }
2025
2031
  ngOnInit() {
2026
- if (!this.permissions.hasRole('ROLE_INVENTORY_READ')) {
2032
+ if (!this.permissions.hasRole(Permissions.ROLE_INVENTORY_READ)) {
2027
2033
  this.sortable = false;
2028
2034
  }
2029
2035
  this.shouldDisableAddGroup = !this.subAssetsService.canCreateGroup();
@@ -2080,7 +2086,7 @@ class SubAssetsComponent {
2080
2086
  this.group = Object.assign({}, contextData);
2081
2087
  this.title = this.group.name;
2082
2088
  this.currentGroupId = this.group.id;
2083
- this.shouldDisableAddGroup = !(yield this.permissionsService.canEdit(['ROLE_INVENTORY_ADMIN', 'ROLE_INVENTORY_CREATE'], this.group));
2089
+ this.shouldDisableAddGroup = !(yield this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN, Permissions.ROLE_INVENTORY_CREATE], this.group));
2084
2090
  this.shouldDisableAssignDevices = !(yield this.subAssetsService.canAssignDevice(this.group));
2085
2091
  this.customProperties = yield this.subAssetsService.getCustomProperties(this.group);
2086
2092
  this.shouldShowAssetsProperties =