@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
85 lines • 11.1 kB
JavaScript
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==