@elgato-stream-deck/core
Version:
An npm module for interfacing with the Elgato Stream Deck
47 lines • 1.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.studioProperties = void 0;
exports.StreamDeckStudioFactory = StreamDeckStudioFactory;
const base_js_1 = require("./base.js");
const generic_gen2_js_1 = require("./generic-gen2.js");
const id_js_1 = require("../id.js");
const controlsGenerator_js_1 = require("../controlsGenerator.js");
const studio_js_1 = require("../services/properties/studio.js");
const studioControls = [
{
type: 'encoder',
row: 0,
column: 0,
index: 0,
hidIndex: 0,
hasLed: true,
ledRingSteps: 24,
},
...(0, controlsGenerator_js_1.generateButtonsGrid)(16, 2, { width: 144, height: 112 }, false, 1),
{
type: 'encoder',
row: 0,
column: 17,
index: 1,
hidIndex: 1,
hasLed: true,
ledRingSteps: 24,
lcdRingOffset: 12,
},
];
exports.studioProperties = {
MODEL: id_js_1.DeviceModelId.STUDIO,
PRODUCT_NAME: id_js_1.MODEL_NAMES[id_js_1.DeviceModelId.STUDIO],
SUPPORTS_RGB_KEY_FILL: true,
CONTROLS: (0, controlsGenerator_js_1.freezeDefinitions)(studioControls),
KEY_SPACING_HORIZONTAL: 0, // TODO
KEY_SPACING_VERTICAL: 0, // TODO
FULLSCREEN_PANELS: 2,
HAS_NFC_READER: true,
SUPPORTS_CHILD_DEVICES: true,
};
function StreamDeckStudioFactory(device, options, propertiesService) {
const services = (0, generic_gen2_js_1.createBaseGen2Properties)(device, options, exports.studioProperties, propertiesService ?? new studio_js_1.StudioPropertiesService(device), true);
return new base_js_1.StreamDeckBase(device, options, services);
}
//# sourceMappingURL=studio.js.map