UNPKG

ngx-smart-spreadsheet

Version:

Lightweight spreadsheet module for Angular

30 lines 3.9 kB
import { mergeDeep } from "./deep-marge"; const defaultOptions = { contextMenuRowLabel: { INSERT_ROW_ABOVE: 'Insert 1 row above', INSERT_ROW_BELOW: 'Insert 1 row below', DELETE_ROW: 'Delete row', }, contextMenuColLabel: { INSERT_COLUMN_LEFT: 'Insert 1 column left', INSERT_COLUMN_RIGHT: 'Insert 1 column right', DELETE_COLUMN: 'Delete column', } }; export class SpreadsheetSettings { constructor(rows, cols, data, options) { this.rows = rows; this.cols = cols; this.data = data; this.options = options; this.options = mergeDeep(defaultOptions, options || {}); } static empty(rows, cols, options) { return new SpreadsheetSettings(rows, cols, null, options); } static load(data, options) { return new SpreadsheetSettings(null, null, data, options); } } ; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ByZWFkc2hlZXQtc2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnQtc3ByZWFkc2hlZXQvc3JjL2xpYi9zcHJlYWRzaGVldC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3pDLE1BQU0sY0FBYyxHQUE4QjtJQUM5QyxtQkFBbUIsRUFBRTtRQUNqQixnQkFBZ0IsRUFBRSxvQkFBb0I7UUFDdEMsZ0JBQWdCLEVBQUUsb0JBQW9CO1FBQ3RDLFVBQVUsRUFBRSxZQUFZO0tBQzNCO0lBQ0QsbUJBQW1CLEVBQUU7UUFDakIsa0JBQWtCLEVBQUUsc0JBQXNCO1FBQzFDLG1CQUFtQixFQUFFLHVCQUF1QjtRQUM1QyxhQUFhLEVBQUUsZUFBZTtLQUNqQztDQUNKLENBQUM7QUFFRixNQUFNLE9BQU8sbUJBQW1CO0lBQzVCLFlBQ1csSUFBbUIsRUFDbkIsSUFBbUIsRUFDbkIsSUFBdUIsRUFDdkIsT0FBbUM7UUFIbkMsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUNuQixTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ25CLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQTRCO1FBRTFDLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLGNBQWMsRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBWSxFQUFFLElBQVksRUFBRSxPQUFtQztRQUMvRSxPQUFPLElBQUksbUJBQW1CLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBZ0IsRUFBRSxPQUFtQztRQUNwRSxPQUFPLElBQUksbUJBQW1CLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUNKO0FBQUEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1lcmdlRGVlcCB9IGZyb20gXCIuL2RlZXAtbWFyZ2VcIjtcbmltcG9ydCB7IFNwcmVhZHNoZWV0U2V0dGluZ09wdGlvbnMgfSBmcm9tIFwiLi9zcHJlYWRzaGVldC1zZXR0aW5ncy1vcHRpb25zXCI7XG5cbmNvbnN0IGRlZmF1bHRPcHRpb25zOiBTcHJlYWRzaGVldFNldHRpbmdPcHRpb25zID0ge1xuICAgIGNvbnRleHRNZW51Um93TGFiZWw6IHtcbiAgICAgICAgSU5TRVJUX1JPV19BQk9WRTogJ0luc2VydCAxIHJvdyBhYm92ZScsXG4gICAgICAgIElOU0VSVF9ST1dfQkVMT1c6ICdJbnNlcnQgMSByb3cgYmVsb3cnLFxuICAgICAgICBERUxFVEVfUk9XOiAnRGVsZXRlIHJvdycsXG4gICAgfSxcbiAgICBjb250ZXh0TWVudUNvbExhYmVsOiB7XG4gICAgICAgIElOU0VSVF9DT0xVTU5fTEVGVDogJ0luc2VydCAxIGNvbHVtbiBsZWZ0JyxcbiAgICAgICAgSU5TRVJUX0NPTFVNTl9SSUdIVDogJ0luc2VydCAxIGNvbHVtbiByaWdodCcsXG4gICAgICAgIERFTEVURV9DT0xVTU46ICdEZWxldGUgY29sdW1uJyxcbiAgICB9XG59O1xuXG5leHBvcnQgY2xhc3MgU3ByZWFkc2hlZXRTZXR0aW5ncyB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyByb3dzOiBudW1iZXIgfCBudWxsLFxuICAgICAgICBwdWJsaWMgY29sczogbnVtYmVyIHwgbnVsbCxcbiAgICAgICAgcHVibGljIGRhdGE6IHN0cmluZ1tdW10gfCBudWxsLFxuICAgICAgICBwdWJsaWMgb3B0aW9ucz86IFNwcmVhZHNoZWV0U2V0dGluZ09wdGlvbnNcbiAgICApIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gbWVyZ2VEZWVwKGRlZmF1bHRPcHRpb25zLCBvcHRpb25zIHx8IHt9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGVtcHR5KHJvd3M6IG51bWJlciwgY29sczogbnVtYmVyLCBvcHRpb25zPzogU3ByZWFkc2hlZXRTZXR0aW5nT3B0aW9ucyk6IFNwcmVhZHNoZWV0U2V0dGluZ3Mge1xuICAgICAgICByZXR1cm4gbmV3IFNwcmVhZHNoZWV0U2V0dGluZ3Mocm93cywgY29scywgbnVsbCwgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBsb2FkKGRhdGE6IHN0cmluZ1tdW10sIG9wdGlvbnM/OiBTcHJlYWRzaGVldFNldHRpbmdPcHRpb25zKTogU3ByZWFkc2hlZXRTZXR0aW5ncyB7XG4gICAgICAgIHJldHVybiBuZXcgU3ByZWFkc2hlZXRTZXR0aW5ncyhudWxsLCBudWxsLCBkYXRhLCBvcHRpb25zKTtcbiAgICB9XG59O1xuIl19