logger

A logging interceptor for console printing, similar to redux-logger.

Integration Guide

logger can be used to print logs for SDM initialization, DP sending, and event callback chains. If you manually replace an interceptor array, add logger back explicitly on that chain.

Integrate logger for your scenario

src/devices/index.ts

import { SmartDeviceModel, logger } from '@ray-js/panel-sdk';
import { defaultSchema } from '@/devices/schema';

type SmartDeviceSchema = typeof defaultSchema;

const options = {
  interceptors: {
    init: {
      initDpState: [logger],
      initDevInfo: [logger],
    },
    request: {
      publishDps: [logger],
    },
    response: {
      onDpDataChange: [logger],
      onDeviceOnlineStatusUpdate: [logger],
      onDeviceInfoUpdated: [logger],
      onNetworkStatusChange: [logger],
      onBluetoothAdapterStateChange: [logger],
    },
  },
};

export const devices = {
  common: new SmartDeviceModel<SmartDeviceSchema>(options),
};

Supported Chains

CategoryAvailable entries
initinitDpState, initDevInfo
requestpublishDps
responseonDpDataChange, onDeviceOnlineStatusUpdate, onDeviceInfoUpdated, onNetworkStatusChange, onBluetoothAdapterStateChange

API

export declare const logger: Interceptor<any, any, any>;