UNPKG

@avolutions/canvas-painter

Version:

CanvasPainter.js is a simple yet powerful JavaScript library for drawing basic shapes (rectangles, circles, etc.) on HTML5 Canvas with ease. Perfect for creating 2D graphics in your web projects.

38 lines (37 loc) 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CanvasOptions = void 0; const PanOptions_js_1 = require("./PanOptions.js"); const ZoomOptions_js_1 = require("./ZoomOptions.js"); /** * Options for configuring the behavior of a canvas. */ class CanvasOptions { /** * Creates a new instance of CanvasOptions. * * @param options - The partial options provided by the user. */ constructor(options = {}) { // Handle partial ZoomOptions const zoomOptions = new ZoomOptions_js_1.ZoomOptions(options.zoom || {}); // Handle partial PanOptions const panOptions = new PanOptions_js_1.PanOptions(options.pan || {}); // Create the merged options const optionsWithDefaults = Object.assign(Object.assign(Object.assign({}, CanvasOptions.DefaultOptions), options), { zoom: zoomOptions, pan: panOptions }); Object.assign(this, optionsWithDefaults); } } exports.CanvasOptions = CanvasOptions; /** * Default canvas options. */ CanvasOptions.DefaultOptions = { width: 300, height: 150, interactive: true, zoomable: false, pannable: false, zoom: ZoomOptions_js_1.ZoomOptions.DefaultOptions, pan: PanOptions_js_1.PanOptions.DefaultOptions };