ngx-gem-spaas
Version:
This library contains services, components, images and styles to provide a unified look and way-of-working throughout GEM SPaaS.
21 lines • 3.65 kB
JavaScript
/**
* Settings model, used by the settings component to store data on user settings and preferences
*
* @property {boolean} dark the application theme, defaults to light
* @property {ExportExtensionType} exportExtension the preferred extension for data exports, either xlsx or csv
* @property {DecimalSeparatorType} decimalSeparator the user's decimal separator in Excel, used for exporting and
* importing data
* @property {any} extraData any extra data that you want the user to set and store via the settings component
*/
export class SettingsModel {
constructor(objIn) {
this.dark = objIn.hasOwnProperty('dark') ? objIn.dark : false; // if you update the default, also update material.scss default!!
this.decimalSeparator = objIn.decimalSeparator || 'dot';
this.exportExtension = objIn.exportExtension || 'xlsx';
this.extraData = objIn.extraData || {};
}
getCsvDelimiter() {
return this.decimalSeparator === 'comma' ? ';' : ',';
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZ2VtLXNwYWFzL3NyYy9fbW9kZWxzL3NldHRpbmdzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7Ozs7OztHQVFHO0FBRUgsTUFBTSxPQUFPLGFBQWE7SUFNeEIsWUFBWSxLQUFVO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsaUVBQWlFO1FBQ2hJLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLElBQUksS0FBSyxDQUFDO1FBQ3hELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsSUFBSSxNQUFNLENBQUM7UUFDdkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDdkQsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRXhwb3J0RXh0ZW5zaW9uVHlwZSA9ICdjc3YnIHwgJ3hsc3gnO1xyXG5leHBvcnQgdHlwZSBEZWNpbWFsU2VwYXJhdG9yVHlwZSA9ICdkb3QnIHwgJ2NvbW1hJztcclxuXHJcbi8qKlxyXG4gKiBTZXR0aW5ncyBtb2RlbCwgdXNlZCBieSB0aGUgc2V0dGluZ3MgY29tcG9uZW50IHRvIHN0b3JlIGRhdGEgb24gdXNlciBzZXR0aW5ncyBhbmQgcHJlZmVyZW5jZXNcclxuICpcclxuICogQHByb3BlcnR5IHtib29sZWFufSBkYXJrIHRoZSBhcHBsaWNhdGlvbiB0aGVtZSwgZGVmYXVsdHMgdG8gbGlnaHRcclxuICogQHByb3BlcnR5IHtFeHBvcnRFeHRlbnNpb25UeXBlfSBleHBvcnRFeHRlbnNpb24gdGhlIHByZWZlcnJlZCBleHRlbnNpb24gZm9yIGRhdGEgZXhwb3J0cywgZWl0aGVyIHhsc3ggb3IgY3N2XHJcbiAqIEBwcm9wZXJ0eSB7RGVjaW1hbFNlcGFyYXRvclR5cGV9IGRlY2ltYWxTZXBhcmF0b3IgdGhlIHVzZXIncyBkZWNpbWFsIHNlcGFyYXRvciBpbiBFeGNlbCwgdXNlZCBmb3IgZXhwb3J0aW5nIGFuZFxyXG4gKiBpbXBvcnRpbmcgZGF0YVxyXG4gKiBAcHJvcGVydHkge2FueX0gZXh0cmFEYXRhIGFueSBleHRyYSBkYXRhIHRoYXQgeW91IHdhbnQgdGhlIHVzZXIgdG8gc2V0IGFuZCBzdG9yZSB2aWEgdGhlIHNldHRpbmdzIGNvbXBvbmVudFxyXG4gKi9cclxuXHJcbmV4cG9ydCBjbGFzcyBTZXR0aW5nc01vZGVsIHtcclxuICBkYXJrOiBib29sZWFuO1xyXG4gIGV4cG9ydEV4dGVuc2lvbjogRXhwb3J0RXh0ZW5zaW9uVHlwZTtcclxuICBkZWNpbWFsU2VwYXJhdG9yOiBEZWNpbWFsU2VwYXJhdG9yVHlwZTtcclxuICBleHRyYURhdGE6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3Iob2JqSW46IGFueSkge1xyXG4gICAgdGhpcy5kYXJrID0gb2JqSW4uaGFzT3duUHJvcGVydHkoJ2RhcmsnKSA/IG9iakluLmRhcmsgOiBmYWxzZTsgLy8gaWYgeW91IHVwZGF0ZSB0aGUgZGVmYXVsdCwgYWxzbyB1cGRhdGUgbWF0ZXJpYWwuc2NzcyBkZWZhdWx0ISFcclxuICAgIHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9IG9iakluLmRlY2ltYWxTZXBhcmF0b3IgfHwgJ2RvdCc7XHJcbiAgICB0aGlzLmV4cG9ydEV4dGVuc2lvbiA9IG9iakluLmV4cG9ydEV4dGVuc2lvbiB8fCAneGxzeCc7XHJcbiAgICB0aGlzLmV4dHJhRGF0YSA9IG9iakluLmV4dHJhRGF0YSB8fCB7fTtcclxuICB9XHJcblxyXG4gIGdldENzdkRlbGltaXRlcigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZGVjaW1hbFNlcGFyYXRvciA9PT0gJ2NvbW1hJyA/ICc7JyA6ICcsJztcclxuICB9XHJcblxyXG59XHJcbiJdfQ==