@elgato-stream-deck/core
Version:
An npm module for interfacing with the Elgato Stream Deck
31 lines • 1.71 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createBaseGen2Properties = createBaseGen2Properties;
const imageWriter_js_1 = require("../services/imageWriter/imageWriter.js");
const headerGenerator_js_1 = require("../services/imageWriter/headerGenerator.js");
const default_js_1 = require("../services/buttonsLcdDisplay/default.js");
const callback_hook_js_1 = require("../services/callback-hook.js");
const gen2_js_1 = require("../services/properties/gen2.js");
const jpeg_js_1 = require("../services/imagePacker/jpeg.js");
const gen2_js_2 = require("../services/input/gen2.js");
const encoderLed_js_1 = require("../services/encoderLed.js");
function extendDevicePropertiesForGen2(rawProps) {
return {
...rawProps,
KEY_DATA_OFFSET: 3,
};
}
function createBaseGen2Properties(device, options, properties, propertiesService, disableXYFlip) {
const fullProperties = extendDevicePropertiesForGen2(properties);
const events = new callback_hook_js_1.CallbackHook();
return {
deviceProperties: fullProperties,
events,
properties: propertiesService ?? new gen2_js_1.Gen2PropertiesService(device),
buttonsLcd: new default_js_1.DefaultButtonsLcdService(new imageWriter_js_1.StreamdeckDefaultImageWriter(new headerGenerator_js_1.StreamdeckGen2ImageHeaderGenerator()), new jpeg_js_1.JpegButtonLcdImagePacker(options.encodeJPEG, !disableXYFlip), device, fullProperties),
lcdSegmentDisplay: null,
inputService: new gen2_js_2.Gen2InputService(fullProperties, events),
encoderLed: new encoderLed_js_1.EncoderLedService(device, properties.CONTROLS),
};
}
//# sourceMappingURL=generic-gen2.js.map