---
title: Ray
---

# Ray Changelog

## 1.7.x

**Features**

- Added `maptap` click event for Map component
- Added `publishDps` atomic interface exposure
- Added IPC-related APIs
- Added `scrollIntoViewOffset` property for ScrollView, supporting scroll offset configuration
- Added `bounces` property for ScrollView, supporting scroll bounce effect
- Added `injectTTT` property for WebView / iframe
- Added Pet Camera related APIs
- Added `exportStatistics15min` API for chart cloud capability (5-minute/15-minute statistics data)

**Bug Fixes**

- Fixed naming conflict issue with `publishDps` export
- Fixed redundant CSS file generation in chunk entry during mini program build
- Fixed compatibility issue with `@i18n` double quotes in `app.json` i18n
- Fixed `build-component` generating core-js import JSON polyfill issue
- Fixed `textarea` event name error
- Adjusted pet API value-added service related parameters

## 1.6.x

**Features**

- **Supports using built-in Ray runtime from base library** (no framework package needed, lighter integration)
- Supports page snapshot (`snapshot`)
- Supports mini program subpackage configuration
- Added AIKit exports and type definitions
- Added AI Pet series APIs
- Added AI Agent APIs
- Added IpcKit and vacuum cleaner `renameHistoryMap` API
- Added gyroscope vacuum cleaner API stubs
- Added `type` property for IpcPlayer
- Added `setDeviceAddress` / `getDeviceAddress` device address APIs
- Supports `offNavigationBarBack` event deregistration

**Bug Fixes**

- Fixed issue with dynamically adding components
- Fixed type definition issues for View and Swiper
- Fixed `getCurrentPages` type issue
- Fixed `hideScrollbar` property not taking effect for ScrollView

## 1.5.x

**Features**

- Added laser vacuum cleaner related features and APIs
- Added `getLightHighPower` API to determine if device supports advanced capabilities
- Added `getAppAuthorizeSetting` API to get application authorization settings

**Bug Fixes**

- Fixed Zigbee remote control API return type definition issue

**Improvements**

- Optimized `getAnalyticsLogsStatusLog` API, added `dpValues` return parameter

## 1.4.x

**Features**

- Added `openDeviceGWSubSearchConfigure` to open gateway panel network configuration for sub-devices - Search configuration (new version)
- Added `openDeviceGWSubHelpList` to open gateway panel network configuration for sub-devices - Configuration help list (new version)
- Added `getRemoteLocalRelation` panel to get assigned localIds after network configuration
- Added `openOutdoorConfigDeviceHome` to open network configuration page
- Added `openDevNetworkCheck` to open device network check page
- Added `openSmartScene` to open scene page
- Added `openDevManualAndSmart` to open one-click execution and automation page
- Added `openHelpAndFeedback` to open help and feedback page
- Added `openMoreService` to open more services page
- Added `openAppHelpCenter` to open help center page
- Added `openMessageCenter` to open message center page
- Added `getOutdoorDeviceIcon` to get travel product images by device IDs
- Updated MapKit with new functions, upgraded to MapKit 3.4.13
- reverseGeocodeLocation
- coordinateWGS84ToGCJ02
- coordinateGCJ02ToWGS84
- getMapType
- Added `reportOutdoorsLocation (Device Location Reporting)` cloud capability API
- Added `map.transformLocation (Get address from coordinates)` API
- Added door lock related APIs
- Updated getWeathers return value, added pop/qpf fields
- Added `openCreateScene (Open create scene page)`, `openEditScene (Open edit scene page)`, `openConfigDevice (Open device configuration page)`, `openGuideScene (Open guide scene page)`
- Added outdoor travel jump to cycling navigation client route page
- Added `OpenGroupCreate` function for creating groups
- Added `onOpenGroupCreate` function for group creation monitoring
- Added `Weather Service` cloud capability related APIs
- Added `Biorhythm` cloud capability related APIs
- Added `Lighting Library` cloud capability related APIs
- Updated `Device Log` cloud capability related APIs
- Updated `Location Capability` cloud capability related APIs

## 1.3.x

**Features**

- Mapped `onSelect` property for `RichText`
- Added left and right content indentation properties for `input`
- Added `nativeDisabled`

## 1.1.0

**Features**

- Added Location Capability related APIs
  ```
  import { map } from '@ray-js/ray'
  const { getLocation, chooseLocation, getMapList, isGeofenceReachLimit, openGeofenceMap, openMapAppLocation, registerGeofence, unregisterGeofence, updateGeofence } = map
  ```

## 1.0.0

**Features**

- Added Ray plugin capability
- `import { initPanelEnvironment, publishDps } from '@ray-js/ray'`
- `publishDps` compatible with basic and advanced usage, see documentation for details

## 0.9.x

**Features**

- Added several APIs

  ```
  import { getCurrentVolumeByMode, backToHomeAndOpenPanel, getAccountInfo, getAccountInfoSync, getDeviceListByDevIds, sendMqttMessage } from '@ray-js/ray'
  ```

## 0.8.x

**Features**

- Added several APIs

  ```
  import { MiniWidgetDialog, handleShortcut,isAssociatedShortcut,isSupportedShortcut,connectBluetoothDevice,disconnectBluetoothDevice,onSubDeviceAdded,offSubDeviceAdded,onSubDeviceDpUpdate,offSubDeviceDpUpdate,onSubDeviceInfoUpdate,offSubDeviceInfoUpdate,onSubDeviceRemoved, offSubDeviceRemoved, registerGateWaySubDeviceListener, unregisterGateWaySubDeviceListener } from '@ray-js/ray'
  ```

**Improvements**

- Updated `movable-view` `movable-area`

## 0.7.x

**Improvements**

- Made some optimizations during compilation to improve performance and efficiency
- Bound `ray-core` version to reduce dependency installation cognitive load

## 0.6.x

**Features**

- Added APIs `onAppEvent` `offAppEvent` `onAppHide` `offAppHide` `onAppShow` `offAppShow` `onError` `offError` `onThemeChange` `offThemeChange` `onWindowResize` `offWindowResize` `onPageNotFound`
- Added `WebView` `NativeVideo` `Map` `Camera` layered components
- Aggregated package `@ray-js/ray`
  - Provides `@ray-js/ray` as an aggregation of `@ray-js/framework`, `@ray-js/ray`, `@ray-js/api`. No need to install those three packages separately, just install `@ray-js/ray`
  - Code references to `api`, `components` can all be imported from `@ray-js/ray`: `import { Button, View, Swiper, PageContainer, Input, Slider, Textarea, usePageInstance, getAppInfo } from '@ray-js/ray'`
- Provides `usePageInstance` `useNativeEffect` `useQuery` `useComponentInstance`
  - `import { usePageInstance, useNativeEffect, useQuery, useComponentInstance } from '@ray-js/ray'`

**Improvements**

- Project engineering optimization
  - Removed legacy `react-native` dependencies from project
- Build optimization
- RJS build optimization
- Runtime optimization
  - `@ray-js/env` exports `isTuya`
  - Runtime performance optimization
  - Removed undefined data transmission in Ray framework
  - Removed unused property default values in components
- API dependency Kit upgrades
  - BaseKit -> 3.0.0
  - BizKit -> 3.0.1
  - DeviceKit -> 3.0.0
  - MiniKit -> 3.0.0
  - BaseKit's `getDeviceInfo` aliased as `getMobileDeviceInfo`

## 0.5.x

**Features**

- WeChat Mini Program subpackage capability

  ```js
  // src/routes.config.ts configuration
  export const subpackages = [
    {
      root: 'packageB',
      pages: [
        {
          route: '/a/:uid',
          path: '/pages/a/index',
        },
      ],
    },
    {
      root: 'packageC',
      pages: [
        {
          route: '/c',
          path: '/pages/c/index',
        },
      ],
    },
  ];

  // Usage
  router.push(`/a/${Date.now()}`, {
    subpackage: 'packageB',
  });

  router.replace(`/c`, {
    subpackage: 'packageC',
  });
  ```

**Improvements**

- webpack v4 to v5
- npm package scope changed from `@remax` to `@ray-core`
  - `@remax/{pkgName}` => `@ray-core/{pkgName}`
  - `remax` => `@ray-core/ray`
- Build performance optimization
