Seven descriptors written from their pages replace seven stubs. All are version 3; 1.5.2 announced Speaker, StepSpeaker, EqualizerController and PlaybackStateReporter as version 1, and all but ChannelController without a property. StepSpeaker has no properties object in discovery and PlaybackController one without fields, next to supportedOperations; a directive for an operation the device did not list is answered with INVALID_DIRECTIVE. The equalizer declares bands, modes or both under "configurations", a TV its inputs from the 61 names of the page. Not described: the lineup of ChannelController, whose discovery example the page folds away. The discovery examples of InputController spell one key "friendNames"; the fixtures have friendlyNames, as its table does. 62 examples of the six pages are saved as fixtures. 241 tests pass, 215 before. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
57 lines
3.3 KiB
TypeScript
57 lines
3.3 KiB
TypeScript
// Relative specifiers carry ".js": Node's ES module loader resolves no extension, and TypeScript maps it back to the .ts.
|
|
export { default as Alex2MQTT, DEFAULT_HOST } from "./Alex2Node.js";
|
|
export type { Alex2MQTTOptions } from "./Alex2Node.js";
|
|
export { default as Device } from "./device/Device.js";
|
|
export type { EndpointDefinition, EndpointJson } from "./device/Device.js";
|
|
export { Capability } from "./device/Capability.js";
|
|
export type { CapabilityJson, CommonOptions, Declaration } from "./device/Capability.js";
|
|
|
|
// The interfaces, for device.add(), and the registry that holds them by name
|
|
export { registry, DeclarationError, SchemaError } from "./registry/index.js";
|
|
export {
|
|
Alexa, BrightnessController, ChannelController, ColorController, ColorTemperatureController, ContactSensor,
|
|
EqualizerController, HumiditySensor, InputController, LockController, ModeController, MotionSensor,
|
|
PercentageController, PlaybackController, PlaybackStateReporter, PowerLevelController, RangeController,
|
|
SecurityPanelController, Speaker, StepSpeaker, TemperatureSensor, ThermostatController,
|
|
ThermostatControllerSchedule, ToggleController,
|
|
} from "./registry/index.js";
|
|
export { PowerController, EndpointHealth } from "./compat/enums.js";
|
|
export { asset, text, semantics, SemanticsBuilder } from "./registry/index.js";
|
|
|
|
// The vocabularies of the Smart Home API
|
|
export {
|
|
ASSETS as Assets, UNITS_OF_MEASURE as Units, ACTIONS as Actions, STATES as States,
|
|
DISPLAY_CATEGORIES as DisplayCategories, INPUTS as Inputs, THERMOSTAT_MODES as ThermostatModes,
|
|
} from "./registry/index.js";
|
|
export type {
|
|
ActionId, AssetId, DisplayCategoryName, StateId, UnitOfMeasure,
|
|
ActionsToDirective, AnyDescriptor, CapabilityExtras, Declared, DirectiveDescriptor, EndpointView, EventDescriptor,
|
|
InterfaceDescriptor, Label, PropertyDescriptor, Semantics, StatesToRange, StatesToValue,
|
|
ActionName, StateName, InputName, Mode, ThermostatModeName, Infer, Schema, Temperature, TimeInterval,
|
|
} from "./registry/index.js";
|
|
|
|
// The messages: what the bridge publishes, built from plain values
|
|
export * as messages from "./messages/index.js";
|
|
export { AlexaError, AlexaErrors, MessageError, StateBuilder, property } from "./messages/index.js";
|
|
export type {
|
|
ChangeCause, ChangeReportMessage, DeferredResponseMessage, ErrorResponseMessage, Header, ProactiveEventMessage,
|
|
Property, PropertyOptions, ResponseMessage, SceneEventMessage,
|
|
} from "./messages/index.js";
|
|
|
|
// Publishing: the topics of the Alex2MQTT contract, and a publisher that needs no broker for tests
|
|
export * as topics from "./topics.js";
|
|
export { MemoryPublisher } from "./transport.js";
|
|
export type { Publisher, PublishResult } from "./transport.js";
|
|
|
|
// Directives: what a handler is given
|
|
export type { DirectiveContext, DirectiveHandler, Fill, RawDirective, Timers } from "./dispatcher.js";
|
|
|
|
// 1.x
|
|
export { AlexaInterface } from "./compat/AlexaInterface.js";
|
|
export type { SupportedMode } from "./compat/AlexaInterface.js";
|
|
export { ActionMapping } from "./compat/ActionMapping.js";
|
|
export {
|
|
AlexaActions, AlexaErrorType, AlexaInterfaceType, DisplayCategory, PowerState, TemperatureSensorScale, ThermostatMode,
|
|
} from "./compat/enums.js";
|
|
export { AlexaStatusMessage } from "./compat/AlexaStatusMessage.js";
|
|
export { AlexaErrorResponse } from "./compat/AlexaErrorResponse.js";
|