UNPKG

@constructorfleet/ultimate-govee

Version:

Library for interacting with Govee devices written in Typescript.

247 lines 10.4 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.EffectListResponse = exports.EffectData = exports.EffectCategory = exports.EffectScene = exports.LightEffect = exports.EffectSceneRule = exports.LightEffectSpecialEffect = exports.SpeedInfo = void 0; const class_transformer_1 = require("class-transformer"); const _ultimate_govee_common_1 = require("../../../../common"); const govee_api_models_1 = require("../../govee-api.models"); const op_code_1 = require("./op-code"); class SpeedInfo { } exports.SpeedInfo = SpeedInfo; __decorate([ (0, class_transformer_1.Expose)({ name: 'speedIndex' }), __metadata("design:type", Number) ], SpeedInfo.prototype, "index", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'supSpeed' }), __metadata("design:type", Boolean) ], SpeedInfo.prototype, "supportsSpeed", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'config' }), __metadata("design:type", Object) ], SpeedInfo.prototype, "config", void 0); class LightEffectSpecialEffect { opCode(code) { return (0, op_code_1.rebuildOpCode)(code, this.opCodeBase64); } } exports.LightEffectSpecialEffect = LightEffectSpecialEffect; __decorate([ (0, class_transformer_1.Expose)({ name: 'scenceParamId' }), __metadata("design:type", Number) ], LightEffectSpecialEffect.prototype, "parameterId", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneParam' }), __metadata("design:type", String) ], LightEffectSpecialEffect.prototype, "opCodeBase64", void 0); __decorate([ (0, class_transformer_1.Exclude)(), __metadata("design:type", Function), __metadata("design:paramtypes", [Number]), __metadata("design:returntype", Object) ], LightEffectSpecialEffect.prototype, "opCode", null); __decorate([ (0, class_transformer_1.Expose)({ name: 'cmdVersion' }), __metadata("design:type", Number) ], LightEffectSpecialEffect.prototype, "cmdVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'supportSku' }), __metadata("design:type", Array) ], LightEffectSpecialEffect.prototype, "supportedModels", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'speedInfo' }), __metadata("design:type", SpeedInfo) ], LightEffectSpecialEffect.prototype, "speedInfo", void 0); class EffectSceneRule { } exports.EffectSceneRule = EffectSceneRule; __decorate([ (0, class_transformer_1.Expose)({ name: 'maxSoftVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "maxSoftwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'minSoftVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "minSoftwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'maxHardVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "maxHardwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'minHardVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "minHardwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'maxWifiSoftVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "maxWiFiSoftwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'minWifiSoftVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "minWiFiSoftwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'maxWifiHardVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "maxWiFiHardwareVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'minWifiHardVersion' }), __metadata("design:type", String) ], EffectSceneRule.prototype, "minWiFiHardwareVersion", void 0); class LightEffect { get opCode() { return (0, op_code_1.rebuildOpCode)(this.code, this.opCodeBase64); } get diyEffect() { if (this.diyOpCodeBase64 === undefined) { return undefined; } // Probably wrong return this.diyOpCodeBase64.split('/').map(_ultimate_govee_common_1.base64ToHex); } } exports.LightEffect = LightEffect; __decorate([ (0, class_transformer_1.Expose)({ name: 'scenceParamId' }), __metadata("design:type", Number) ], LightEffect.prototype, "parameterId", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'scenceName' }), __metadata("design:type", String) ], LightEffect.prototype, "name", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'scenceParam' }), __metadata("design:type", String) ], LightEffect.prototype, "opCodeBase64", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'scenceOpCode' }), __metadata("design:type", Object), __metadata("design:paramtypes", []) ], LightEffect.prototype, "opCode", null); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneCode' }), __metadata("design:type", Number) ], LightEffect.prototype, "code", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'specialEffect' }), __metadata("design:type", Array) ], LightEffect.prototype, "specialEffect", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'cmdVersion' }), __metadata("design:type", Number) ], LightEffect.prototype, "cmdVersion", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneType' }), __metadata("design:type", Number) ], LightEffect.prototype, "sceneType", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'diyEffectCode' }), __metadata("design:type", Array) ], LightEffect.prototype, "diyOpCode", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'diyEffectStr' }), __metadata("design:type", String) ], LightEffect.prototype, "diyOpCodeBase64", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'diyEffect', toPlainOnly: true }), __metadata("design:type", Object), __metadata("design:paramtypes", []) ], LightEffect.prototype, "diyEffect", null); __decorate([ (0, class_transformer_1.Expose)({ name: 'rules' }), __metadata("design:type", Array) ], LightEffect.prototype, "rules", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'speedInfo' }), __metadata("design:type", SpeedInfo) ], LightEffect.prototype, "speedInfo", void 0); class EffectScene { } exports.EffectScene = EffectScene; __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneId' }), __metadata("design:type", Number) ], EffectScene.prototype, "id", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'iconUrls' }), __metadata("design:type", Array) ], EffectScene.prototype, "urls", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneName' }), __metadata("design:type", String) ], EffectScene.prototype, "name", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneType' }), __metadata("design:type", Number) ], EffectScene.prototype, "type", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneCode' }), __metadata("design:type", Number) ], EffectScene.prototype, "code", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'sceneCategoryId' }), __metadata("design:type", Number) ], EffectScene.prototype, "categoryId", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'rule' }), __metadata("design:type", EffectSceneRule) ], EffectScene.prototype, "rule", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'lightEffects' }), (0, class_transformer_1.Type)(() => LightEffect), __metadata("design:type", Array) ], EffectScene.prototype, "lightEffects", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'voiceUrl' }), __metadata("design:type", String) ], EffectScene.prototype, "voiceUrl", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'createTime' }), __metadata("design:type", Number) ], EffectScene.prototype, "createTimestamp", void 0); class EffectCategory { } exports.EffectCategory = EffectCategory; __decorate([ (0, class_transformer_1.Expose)({ name: 'categoryId' }), __metadata("design:type", Number) ], EffectCategory.prototype, "id", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'name' }), __metadata("design:type", String) ], EffectCategory.prototype, "name", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'scenes' }), (0, class_transformer_1.Type)(() => EffectScene), __metadata("design:type", Array) ], EffectCategory.prototype, "scenes", void 0); class EffectData { } exports.EffectData = EffectData; __decorate([ (0, class_transformer_1.Expose)({ name: 'supportSpeed' }), (0, class_transformer_1.Transform)(({ value }) => value === 1, { toClassOnly: true }), __metadata("design:type", Boolean) ], EffectData.prototype, "supportSpeed", void 0); __decorate([ (0, class_transformer_1.Expose)({ name: 'categories' }), (0, class_transformer_1.Type)(() => EffectCategory), __metadata("design:type", Array) ], EffectData.prototype, "categories", void 0); class EffectListResponse extends govee_api_models_1.GoveeAPIResponse { } exports.EffectListResponse = EffectListResponse; __decorate([ (0, class_transformer_1.Expose)({ name: 'data' }), (0, class_transformer_1.Type)(() => EffectData), __metadata("design:type", EffectData) ], EffectListResponse.prototype, "effectData", void 0); //# sourceMappingURL=effect-list.response.js.map