@ledvance/ui-biz-bundle 1.1.14 → 1.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "name": "@ledvance/ui-biz-bundle",
5
5
  "pid": [],
6
6
  "uiid": "",
7
- "version": "1.1.14",
7
+ "version": "1.1.15",
8
8
  "scripts": {},
9
9
  "dependencies": {
10
10
  "@ledvance/base": "^1.x",
@@ -1,12 +1,12 @@
1
1
  import React, { useEffect, useMemo } from "react";
2
2
  import Page from "@ledvance/base/src/components/Page";
3
- import { useDeviceId, useDeviceInfo, useFlags, useMoods } from "@ledvance/base/src/models/modules/NativePropsSlice";
3
+ import { useDeviceId, useDeviceInfo, useFlagMode, useFlags, useMoods } from "@ledvance/base/src/models/modules/NativePropsSlice";
4
4
  import { FlatList } from "react-native";
5
5
  import Spacer from "@ledvance/base/src/components/Spacer";
6
6
  import { Utils } from "tuya-panel-kit";
7
7
  import FlagItem from "./FlagItem";
8
8
  import { FlagUiInfo } from "./FlagInfo";
9
- import { getRemoteFlag, saveFlag, useFlag } from "./FlagActions";
9
+ import { getRemoteFlag, saveFlag, saveFlagMode, useFlag } from "./FlagActions";
10
10
  import { useRoute, useNavigation } from '@react-navigation/core'
11
11
  import I18n from "@ledvance/base/src/i18n";
12
12
  import { useReactive, useUpdateEffect } from "ahooks";
@@ -46,6 +46,7 @@ const FlagPage = () => {
46
46
  const [dps, setDps] = useDps()
47
47
  const [moods, setMoods] = useMoods()
48
48
  const [flags, setFlags] = useFlags()
49
+ const [flagMode, setFlagMode] = useFlagMode()
49
50
  const [flagState, setFlag] = useFlag((params.isStripLight ? params?.drawToolLight?.drawToolCode : params.sceneDataCode)!!, {
50
51
  isMixLight: params.isSupportMixScene,
51
52
  isStringLight: params.isStringLight,
@@ -144,6 +145,7 @@ const FlagPage = () => {
144
145
  const mood = mode === 'del' ? (newScene.length === 0 ? undefined : newScene[0]) : checkedMood
145
146
  const res = await saveFlag(devId, cloneDeep(newScene))
146
147
  if (res.success) {
148
+ updateFlagMode()
147
149
  state.flags = cloneDeep(newScene)
148
150
  setFlags(cloneDeep(newScene))
149
151
  if(mode === 'del' && currentMood.id !== flagState.id){
@@ -165,6 +167,13 @@ const FlagPage = () => {
165
167
  }
166
168
  }
167
169
 
170
+ const updateFlagMode = () =>{
171
+ if(!flagMode){
172
+ saveFlagMode(devId, JSON.stringify(true)).then()
173
+ setFlagMode(true)
174
+ }
175
+ }
176
+
168
177
  return (
169
178
  <Page
170
179
  headlineText={I18n.getLang('Feature_devicepanel_flags')}
@@ -185,12 +194,13 @@ const FlagPage = () => {
185
194
  <FlatList
186
195
  data={state.flags}
187
196
  renderItem={({ item }) => <FlagItem
188
- enable={dps[params.workModeCode] === (params.isStripLight ? WORK_MODE.Colour : WORK_MODE.Scene) && flagId === item.id}
197
+ enable={dps[params.workModeCode] === (params.isStripLight ? WORK_MODE.COLOUR : WORK_MODE.SCENE) && flagId === item.id}
189
198
  title={item.name}
190
199
  colors={item.colors.map(item => hsv2Hex(item.h, item.s, item.v))}
191
200
  onSwitch={async (enable) => {
192
201
  if (enable) {
193
202
  await setFlag(item)
203
+ updateFlagMode()
194
204
  }
195
205
  }}
196
206
  onPress={() => {
@@ -101,7 +101,7 @@ const DynamicMoodEditorPage = () => {
101
101
  isUVCFan
102
102
  )
103
103
  if (saveRes.success) {
104
- if(flagMode && params.isSupportColor){
104
+ if(flagMode){
105
105
  saveFlagMode(deviceId, JSON.stringify(false)).then()
106
106
  setFlagMode(false)
107
107
  }
@@ -107,7 +107,7 @@ const FantasyMoodEditPage = () => {
107
107
  })
108
108
  const saveRes = await saveFantasyScene(deviceId, params.moduleParams.featureId, list, moduleParams.isStringLight)
109
109
  if (saveRes.success) {
110
- if(flagMode && params.isSupportColor){
110
+ if(flagMode){
111
111
  saveFlagMode(deviceId, JSON.stringify(false)).then()
112
112
  setFlagMode(false)
113
113
  }
@@ -4,7 +4,7 @@ import { Utils } from 'tuya-panel-kit'
4
4
  import { ScenePageUIState, SceneUIState } from '../scene/SceneInfo'
5
5
  import { getRemoteSceneList, useScene } from '../scene/SceneAction'
6
6
  import { SCENE, useWorkMode } from '../../hooks/DeviceDpStateHooks'
7
- import { isUVCFanDevice, useDeviceInfo } from '@ledvance/base/src/models/modules/NativePropsSlice'
7
+ import { isUVCFanDevice, useDeviceInfo, useFlagMode } from '@ledvance/base/src/models/modules/NativePropsSlice'
8
8
  import { useReactive, useUpdateEffect } from 'ahooks'
9
9
  import Strings from '@ledvance/base/src/i18n'
10
10
  import res from '@ledvance/base/src/res'
@@ -16,6 +16,7 @@ import CustomListDialog from '@ledvance/base/src/components/CustomListDialog'
16
16
  import MoodItem from './MoodItem'
17
17
  import { toAddMoodPage, toDynamicMoodEditorPage, toStaticMoodEditorPage } from '../../navigation/tools'
18
18
  import { useNavigation, useRoute } from '@react-navigation/core'
19
+ import { saveFlagMode } from '../flags/FlagActions'
19
20
 
20
21
  const cx = Utils.RatioUtils.convertX
21
22
 
@@ -58,6 +59,7 @@ const MoodPage = () => {
58
59
  }
59
60
  const [sceneId, setScene] = useScene(params.sceneDpCode)
60
61
  const [workMode] = useWorkMode(params.workModeDpCode)
62
+ const [flagMode, setFlagMode] = useFlagMode()
61
63
  const deviceInfo = useDeviceInfo()
62
64
  const navigation = useNavigation()
63
65
  const isUVCFan = isUVCFanDevice()
@@ -143,6 +145,13 @@ const MoodPage = () => {
143
145
  return mood
144
146
  }, [])
145
147
 
148
+ const updateFlagMode = () =>{
149
+ if(flagMode && params.isSupportColor){
150
+ saveFlagMode(deviceInfo.devId, JSON.stringify(false)).then()
151
+ setFlagMode(false)
152
+ }
153
+ }
154
+
146
155
  return (
147
156
  <>
148
157
  <Page
@@ -226,6 +235,7 @@ const MoodPage = () => {
226
235
  !!params.isFanLamp
227
236
  )
228
237
  state.currentScene = checkMoodData(item)
238
+ updateFlagMode()
229
239
  state.loading = false
230
240
  }} />
231
241
  )
@@ -102,7 +102,7 @@ const StaticMoodEditorPage = () => {
102
102
  !!moduleParams.isFanLamp,
103
103
  )
104
104
  if (saveRes.success) {
105
- if(flagMode && params.isSupportColor){
105
+ if(flagMode && moduleParams.isSupportColor){
106
106
  saveFlagMode(deviceId, JSON.stringify(false)).then()
107
107
  setFlagMode(false)
108
108
  }