UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

85 lines 11.1 kB
import { Validators } from '@angular/forms'; import { gettext } from '@c8y/ngx-components/gettext'; const MAX_DEVICE_STORAGE_LIMIT_MiB = Math.round(Number.MAX_SAFE_INTEGER / 1024 / 1024); /** * Define all hardTyped custom properties, and their configuration in one place. * * This exported const utilizes typescript inferring, * while still benefiting from hard typing, thanks to "satisfies" keyword */ const tenantLimitsCustomPropertiesDefinition = { limitDevicesNumber: { id: 'limit.devices.number', validators: [Validators.min(0)], defaultValue: null, type: 'number', label: gettext('Limit number of devices'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 1000 } }, limitHttpRequests: { id: 'limit.http.requests', validators: [Validators.min(-1)], defaultValue: null, type: 'number', label: gettext('Limit HTTP requests'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 10000 } }, limitHttpQueue: { id: 'limit.http.queue', validators: [Validators.min(-1)], defaultValue: null, type: 'number', label: gettext('Limit HTTP queue'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } }, limitStreamRequests: { id: 'limit.stream.requests', validators: [Validators.min(-1)], defaultValue: null, type: 'number', label: gettext('Limit stream requests'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } }, limitStreamQueue: { id: 'limit.stream.queue', validators: [Validators.min(-1)], defaultValue: null, type: 'number', label: gettext('Limit stream queue'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } }, cepServerQueueLimit: { id: 'cepServer.queue.limit', validators: [Validators.min(-1)], defaultValue: null, type: 'number', label: gettext('Limit CEP server queue'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } }, dataBrokerQueueLimit: { id: 'data-broker.queue.limit', validators: [Validators.min(0)], defaultValue: null, type: 'number', label: gettext('Limit data broker queue'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } }, deviceStorageLimitMiB: { id: 'deviceStorageLimitMiB', validators: [Validators.min(0), Validators.max(MAX_DEVICE_STORAGE_LIMIT_MiB)], defaultValue: 0, type: 'number', label: gettext('Storage limit per device (MiB)'), placeholder: gettext('e.g. {{ example }}'), placeholderArgs: { example: 100 } } }; export const tenantLimitsCustomProperties = tenantLimitsCustomPropertiesDefinition; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWxpbWl0cy1kZWZpbml0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RlbmFudHMvdGVuYW50LWxpbWl0cy90ZW5hbnQtbGltaXRzLWRlZmluaXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFjdEQsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7QUFFdkY7Ozs7O0dBS0c7QUFDSCxNQUFNLHNDQUFzQyxHQUFHO0lBQzdDLGtCQUFrQixFQUFFO1FBQ2xCLEVBQUUsRUFBRSxzQkFBc0I7UUFDMUIsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvQixZQUFZLEVBQUUsSUFBSTtRQUNsQixJQUFJLEVBQUUsUUFBUTtRQUNkLEtBQUssRUFBRSxPQUFPLENBQUMseUJBQXlCLENBQUM7UUFDekMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQztRQUMxQyxlQUFlLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO0tBQ25DO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsRUFBRSxFQUFFLHFCQUFxQjtRQUN6QixVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsWUFBWSxFQUFFLElBQUk7UUFDbEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxLQUFLLEVBQUUsT0FBTyxDQUFDLHFCQUFxQixDQUFDO1FBQ3JDLFdBQVcsRUFBRSxPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFDMUMsZUFBZSxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRTtLQUNwQztJQUNELGNBQWMsRUFBRTtRQUNkLEVBQUUsRUFBRSxrQkFBa0I7UUFDdEIsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLFlBQVksRUFBRSxJQUFJO1FBQ2xCLElBQUksRUFBRSxRQUFRO1FBQ2QsS0FBSyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUNsQyxXQUFXLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixDQUFDO1FBQzFDLGVBQWUsRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUU7S0FDbEM7SUFDRCxtQkFBbUIsRUFBRTtRQUNuQixFQUFFLEVBQUUsdUJBQXVCO1FBQzNCLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxZQUFZLEVBQUUsSUFBSTtRQUNsQixJQUFJLEVBQUUsUUFBUTtRQUNkLEtBQUssRUFBRSxPQUFPLENBQUMsdUJBQXVCLENBQUM7UUFDdkMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQztRQUMxQyxlQUFlLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFO0tBQ2xDO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsRUFBRSxFQUFFLG9CQUFvQjtRQUN4QixVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsWUFBWSxFQUFFLElBQUk7UUFDbEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxLQUFLLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixDQUFDO1FBQ3BDLFdBQVcsRUFBRSxPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFDMUMsZUFBZSxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRTtLQUNsQztJQUNELG1CQUFtQixFQUFFO1FBQ25CLEVBQUUsRUFBRSx1QkFBdUI7UUFDM0IsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLFlBQVksRUFBRSxJQUFJO1FBQ2xCLElBQUksRUFBRSxRQUFRO1FBQ2QsS0FBSyxFQUFFLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQztRQUN4QyxXQUFXLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixDQUFDO1FBQzFDLGVBQWUsRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUU7S0FDbEM7SUFDRCxvQkFBb0IsRUFBRTtRQUNwQixFQUFFLEVBQUUseUJBQXlCO1FBQzdCLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0IsWUFBWSxFQUFFLElBQUk7UUFDbEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxLQUFLLEVBQUUsT0FBTyxDQUFDLHlCQUF5QixDQUFDO1FBQ3pDLFdBQVcsRUFBRSxPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFDMUMsZUFBZSxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRTtLQUNsQztJQUNELHFCQUFxQixFQUFFO1FBQ3JCLEVBQUUsRUFBRSx1QkFBdUI7UUFDM0IsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDN0UsWUFBWSxFQUFFLENBQUM7UUFDZixJQUFJLEVBQUUsUUFBUTtRQUNkLEtBQUssRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUM7UUFDaEQsV0FBVyxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQztRQUMxQyxlQUFlLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFO0tBQ2xDO0NBQ29DLENBQUM7QUFJeEMsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBRXJDLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9nZXR0ZXh0JztcblxuLy8gTW9kZWwgZm9yIGluZGl2aWR1YWwgdGVuYW50IGxpbWl0IGZpZWxkXG5leHBvcnQgaW50ZXJmYWNlIFRlbmFudExpbWl0IHtcbiAgaWQ6IHN0cmluZztcbiAgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXTtcbiAgZGVmYXVsdFZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBib29sZWFuIHwgbnVsbDtcbiAgdHlwZTogJ3RleHQnIHwgJ2NoZWNrYm94JyB8ICdudW1iZXInO1xuICBsYWJlbDogc3RyaW5nO1xuICBsYWJlbEFyZ3M/OiBvYmplY3Q7XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBwbGFjZWhvbGRlckFyZ3M/OiBvYmplY3Q7XG59XG5cbmNvbnN0IE1BWF9ERVZJQ0VfU1RPUkFHRV9MSU1JVF9NaUIgPSBNYXRoLnJvdW5kKE51bWJlci5NQVhfU0FGRV9JTlRFR0VSIC8gMTAyNCAvIDEwMjQpO1xuXG4vKipcbiAqIERlZmluZSBhbGwgaGFyZFR5cGVkIGN1c3RvbSBwcm9wZXJ0aWVzLCBhbmQgdGhlaXIgY29uZmlndXJhdGlvbiBpbiBvbmUgcGxhY2UuXG4gKlxuICogVGhpcyBleHBvcnRlZCBjb25zdCB1dGlsaXplcyB0eXBlc2NyaXB0IGluZmVycmluZyxcbiAqIHdoaWxlIHN0aWxsIGJlbmVmaXRpbmcgZnJvbSBoYXJkIHR5cGluZywgdGhhbmtzIHRvIFwic2F0aXNmaWVzXCIga2V5d29yZFxuICovXG5jb25zdCB0ZW5hbnRMaW1pdHNDdXN0b21Qcm9wZXJ0aWVzRGVmaW5pdGlvbiA9IHtcbiAgbGltaXREZXZpY2VzTnVtYmVyOiB7XG4gICAgaWQ6ICdsaW1pdC5kZXZpY2VzLm51bWJlcicsXG4gICAgdmFsaWRhdG9yczogW1ZhbGlkYXRvcnMubWluKDApXSxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGwsXG4gICAgdHlwZTogJ251bWJlcicsXG4gICAgbGFiZWw6IGdldHRleHQoJ0xpbWl0IG51bWJlciBvZiBkZXZpY2VzJyksXG4gICAgcGxhY2Vob2xkZXI6IGdldHRleHQoJ2UuZy4ge3sgZXhhbXBsZSB9fScpLFxuICAgIHBsYWNlaG9sZGVyQXJnczogeyBleGFtcGxlOiAxMDAwIH1cbiAgfSxcbiAgbGltaXRIdHRwUmVxdWVzdHM6IHtcbiAgICBpZDogJ2xpbWl0Lmh0dHAucmVxdWVzdHMnLFxuICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigtMSldLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBsYWJlbDogZ2V0dGV4dCgnTGltaXQgSFRUUCByZXF1ZXN0cycpLFxuICAgIHBsYWNlaG9sZGVyOiBnZXR0ZXh0KCdlLmcuIHt7IGV4YW1wbGUgfX0nKSxcbiAgICBwbGFjZWhvbGRlckFyZ3M6IHsgZXhhbXBsZTogMTAwMDAgfVxuICB9LFxuICBsaW1pdEh0dHBRdWV1ZToge1xuICAgIGlkOiAnbGltaXQuaHR0cC5xdWV1ZScsXG4gICAgdmFsaWRhdG9yczogW1ZhbGlkYXRvcnMubWluKC0xKV0sXG4gICAgZGVmYXVsdFZhbHVlOiBudWxsLFxuICAgIHR5cGU6ICdudW1iZXInLFxuICAgIGxhYmVsOiBnZXR0ZXh0KCdMaW1pdCBIVFRQIHF1ZXVlJyksXG4gICAgcGxhY2Vob2xkZXI6IGdldHRleHQoJ2UuZy4ge3sgZXhhbXBsZSB9fScpLFxuICAgIHBsYWNlaG9sZGVyQXJnczogeyBleGFtcGxlOiAxMDAgfVxuICB9LFxuICBsaW1pdFN0cmVhbVJlcXVlc3RzOiB7XG4gICAgaWQ6ICdsaW1pdC5zdHJlYW0ucmVxdWVzdHMnLFxuICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigtMSldLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBsYWJlbDogZ2V0dGV4dCgnTGltaXQgc3RyZWFtIHJlcXVlc3RzJyksXG4gICAgcGxhY2Vob2xkZXI6IGdldHRleHQoJ2UuZy4ge3sgZXhhbXBsZSB9fScpLFxuICAgIHBsYWNlaG9sZGVyQXJnczogeyBleGFtcGxlOiAxMDAgfVxuICB9LFxuICBsaW1pdFN0cmVhbVF1ZXVlOiB7XG4gICAgaWQ6ICdsaW1pdC5zdHJlYW0ucXVldWUnLFxuICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigtMSldLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBsYWJlbDogZ2V0dGV4dCgnTGltaXQgc3RyZWFtIHF1ZXVlJyksXG4gICAgcGxhY2Vob2xkZXI6IGdldHRleHQoJ2UuZy4ge3sgZXhhbXBsZSB9fScpLFxuICAgIHBsYWNlaG9sZGVyQXJnczogeyBleGFtcGxlOiAxMDAgfVxuICB9LFxuICBjZXBTZXJ2ZXJRdWV1ZUxpbWl0OiB7XG4gICAgaWQ6ICdjZXBTZXJ2ZXIucXVldWUubGltaXQnLFxuICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLm1pbigtMSldLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBsYWJlbDogZ2V0dGV4dCgnTGltaXQgQ0VQIHNlcnZlciBxdWV1ZScpLFxuICAgIHBsYWNlaG9sZGVyOiBnZXR0ZXh0KCdlLmcuIHt7IGV4YW1wbGUgfX0nKSxcbiAgICBwbGFjZWhvbGRlckFyZ3M6IHsgZXhhbXBsZTogMTAwIH1cbiAgfSxcbiAgZGF0YUJyb2tlclF1ZXVlTGltaXQ6IHtcbiAgICBpZDogJ2RhdGEtYnJva2VyLnF1ZXVlLmxpbWl0JyxcbiAgICB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCldLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBsYWJlbDogZ2V0dGV4dCgnTGltaXQgZGF0YSBicm9rZXIgcXVldWUnKSxcbiAgICBwbGFjZWhvbGRlcjogZ2V0dGV4dCgnZS5nLiB7eyBleGFtcGxlIH19JyksXG4gICAgcGxhY2Vob2xkZXJBcmdzOiB7IGV4YW1wbGU6IDEwMCB9XG4gIH0sXG4gIGRldmljZVN0b3JhZ2VMaW1pdE1pQjoge1xuICAgIGlkOiAnZGV2aWNlU3RvcmFnZUxpbWl0TWlCJyxcbiAgICB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KE1BWF9ERVZJQ0VfU1RPUkFHRV9MSU1JVF9NaUIpXSxcbiAgICBkZWZhdWx0VmFsdWU6IDAsXG4gICAgdHlwZTogJ251bWJlcicsXG4gICAgbGFiZWw6IGdldHRleHQoJ1N0b3JhZ2UgbGltaXQgcGVyIGRldmljZSAoTWlCKScpLFxuICAgIHBsYWNlaG9sZGVyOiBnZXR0ZXh0KCdlLmcuIHt7IGV4YW1wbGUgfX0nKSxcbiAgICBwbGFjZWhvbGRlckFyZ3M6IHsgZXhhbXBsZTogMTAwIH1cbiAgfVxufSBzYXRpc2ZpZXMgUmVjb3JkPHN0cmluZywgVGVuYW50TGltaXQ+O1xuXG5leHBvcnQgdHlwZSBUZW5hbnRMaW1pdHNDdXN0b21Qcm9wZXJ0aWVzS2V5cyA9IGtleW9mIHR5cGVvZiB0ZW5hbnRMaW1pdHNDdXN0b21Qcm9wZXJ0aWVzRGVmaW5pdGlvbjtcblxuZXhwb3J0IGNvbnN0IHRlbmFudExpbWl0c0N1c3RvbVByb3BlcnRpZXM6IHtcbiAgW0sgaW4gVGVuYW50TGltaXRzQ3VzdG9tUHJvcGVydGllc0tleXNdOiBUZW5hbnRMaW1pdDtcbn0gPSB0ZW5hbnRMaW1pdHNDdXN0b21Qcm9wZXJ0aWVzRGVmaW5pdGlvbjtcbiJdfQ==