@ledvance/ui-biz-bundle 1.1.4 → 1.1.6

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.4",
7
+ "version": "1.1.6",
8
8
  "scripts": {},
9
9
  "dependencies": {
10
10
  "@ledvance/base": "^1.x",
@@ -5,7 +5,7 @@ import {useNavigation, useRoute} from '@react-navigation/native'
5
5
  import {StackNavigationProp} from '@react-navigation/stack'
6
6
  import React, {useCallback, useEffect, useMemo} from 'react'
7
7
  import {useReactive} from 'ahooks'
8
- import {COLOUR, useWorkMode, WHITE} from 'hooks/DeviceDpStateHooks'
8
+ import {COLOUR, SCENE, useWorkMode, WHITE} from 'hooks/DeviceDpStateHooks'
9
9
  import {hsv2Hex, mapFloatToRange} from '@ledvance/base/src/utils'
10
10
  import {cctToColor} from '@ledvance/base/src/utils/cctUtils'
11
11
  import res from '@ledvance/base/src/res'
@@ -38,7 +38,7 @@ const DynamicMoodEditorPage = () => {
38
38
  const moduleParams = params.moduleParams
39
39
  const deviceId = useDeviceId()
40
40
  const [moodId, setScene] = useScene(moduleParams.sceneDpCode)
41
- const [, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
41
+ const [workMode, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
42
42
  const isUVCFan = isUVCFanDevice()
43
43
  const role = useRole()
44
44
  const state = useReactive<DynamicMoodEditorPageState>({
@@ -101,7 +101,7 @@ const DynamicMoodEditorPage = () => {
101
101
  )
102
102
  if (saveRes.success) {
103
103
  if (list.length > 0) {
104
- if (isDelete && currentMood.id === moodId) {
104
+ if (isDelete && currentMood.id === moodId && workMode === SCENE) {
105
105
  const setSceneRes = await setScene(
106
106
  deviceId,
107
107
  list[0],
@@ -4,7 +4,7 @@ import { useNavigation, useRoute } from '@react-navigation/native'
4
4
  import { StackNavigationProp } from '@react-navigation/stack'
5
5
  import React, { useCallback, useEffect, useMemo } from 'react'
6
6
  import { useReactive } from 'ahooks'
7
- import { useWorkMode, COLOUR } from 'hooks/DeviceDpStateHooks'
7
+ import { useWorkMode, COLOUR, SCENE } from 'hooks/DeviceDpStateHooks'
8
8
  import { hsv2Hex, mapFloatToRange } from '@ledvance/base/src/utils'
9
9
  import { cctToColor } from '@ledvance/base/src/utils/cctUtils'
10
10
  import res from '@ledvance/base/src/res'
@@ -16,7 +16,7 @@ import Spacer from '@ledvance/base/src/components/Spacer'
16
16
  import LampAdjustView from '@ledvance/base/src/components/LampAdjustView'
17
17
  import { Utils } from 'tuya-panel-kit'
18
18
  import LdvSlider from '@ledvance/base/src/components/ldvSlider'
19
- import { useDeviceId, useRole } from '@ledvance/base/src/models/modules/NativePropsSlice'
19
+ import { useDeviceId } from '@ledvance/base/src/models/modules/NativePropsSlice'
20
20
  import TextButton from '@ledvance/base/src/components/TextButton'
21
21
  import { stringLightSceneMode, stripLightSceneMode, StripSceneUIState, StripNodeInfo, StripLightSceneMode } from '../scene/SceneInfo'
22
22
  import TextFieldStyleButton from '@ledvance/base/src/components/TextFieldStyleButton'
@@ -49,9 +49,8 @@ const FantasyMoodEditPage = () => {
49
49
  const params = cloneDeep(routeParams)
50
50
  const moduleParams = params.moduleParams
51
51
  const deviceId = useDeviceId()
52
- const [, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
52
+ const [workMode, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
53
53
  const [, setFantasyScene] = useFantasyScene(params.moduleParams.sceneDpCode, params.moduleParams.workModeDpCode, params.moduleParams.switchLedDpCode, moduleParams.isStringLight)
54
- const role = useRole()
55
54
  const state = useReactive<FantasyMoodEditPageState>({
56
55
  headline: '',
57
56
  mood: params.currentMood,
@@ -107,7 +106,7 @@ const FantasyMoodEditPage = () => {
107
106
  const saveRes = await saveFantasyScene(deviceId, params.moduleParams.featureId, list, moduleParams.isStringLight)
108
107
  if (saveRes.success) {
109
108
  if (list.length > 0) {
110
- if (isDelete) {
109
+ if (isDelete && workMode === SCENE) {
111
110
  await setFantasyScene(list[0])
112
111
  } else {
113
112
  await setFantasyScene(currentMood)
@@ -1,21 +1,21 @@
1
- import React, {useCallback, useEffect} from 'react'
1
+ import React, { useCallback, useEffect } from 'react'
2
2
  import Page from '@ledvance/base/src/components/Page'
3
- import {Utils} from 'tuya-panel-kit'
4
- import {ScenePageUIState, SceneUIState} from '../scene/SceneInfo'
5
- import {getRemoteSceneList, useScene} from '../scene/SceneAction'
6
- import {SCENE, useWorkMode} from '../../hooks/DeviceDpStateHooks'
7
- import {isUVCFanDevice, useDeviceInfo} from '@ledvance/base/src/models/modules/NativePropsSlice'
8
- import {useReactive, useUpdateEffect} from 'ahooks'
3
+ import { Utils } from 'tuya-panel-kit'
4
+ import { ScenePageUIState, SceneUIState } from '../scene/SceneInfo'
5
+ import { getRemoteSceneList, useScene } from '../scene/SceneAction'
6
+ import { SCENE, useWorkMode } from '../../hooks/DeviceDpStateHooks'
7
+ import { isUVCFanDevice, useDeviceInfo } from '@ledvance/base/src/models/modules/NativePropsSlice'
8
+ import { useReactive, useUpdateEffect } from 'ahooks'
9
9
  import Strings from '@ledvance/base/src/i18n'
10
10
  import res from '@ledvance/base/src/res'
11
- import {FlatList, StyleSheet, View} from 'react-native'
11
+ import { FlatList, StyleSheet, View, Platform } from 'react-native'
12
12
  import Tag from '@ledvance/base/src/components/Tag'
13
13
  import Spacer from '@ledvance/base/src/components/Spacer'
14
14
  import InfoText from '@ledvance/base/src/components/InfoText'
15
15
  import CustomListDialog from '@ledvance/base/src/components/CustomListDialog'
16
16
  import MoodItem from './MoodItem'
17
- import {toAddMoodPage, toDynamicMoodEditorPage, toStaticMoodEditorPage} from '../../navigation/tools'
18
- import {useNavigation, useRoute} from '@react-navigation/core'
17
+ import { toAddMoodPage, toDynamicMoodEditorPage, toStaticMoodEditorPage } from '../../navigation/tools'
18
+ import { useNavigation, useRoute } from '@react-navigation/core'
19
19
 
20
20
  const cx = Utils.RatioUtils.convertX
21
21
 
@@ -129,12 +129,12 @@ const MoodPage = () => {
129
129
  }, [state.flag, sceneId])
130
130
 
131
131
  // 修改之前版本错误mood数据
132
- const checkMoodData = useCallback((mood: SceneUIState) =>{
133
- mood.nodes.forEach(node =>{
134
- if(node.isColorNode){
132
+ const checkMoodData = useCallback((mood: SceneUIState) => {
133
+ mood.nodes.forEach(node => {
134
+ if (node.isColorNode) {
135
135
  node.brightness = 0
136
136
  node.colorTemp = 0
137
- }else{
137
+ } else {
138
138
  node.h = 0
139
139
  node.s = 0
140
140
  node.v = 0
@@ -159,30 +159,30 @@ const MoodPage = () => {
159
159
  text={Strings.getLang('mood_overview_filter_name_text1')}
160
160
  onCheckedChange={checked => {
161
161
  state.staticTagChecked = checked
162
- }}/>
163
- <Spacer width={cx(8)} height={0}/>
162
+ }} />
163
+ <Spacer width={cx(8)} height={0} />
164
164
  <Tag
165
165
  checked={state.dynamicTagChecked}
166
166
  text={Strings.getLang('mood_overview_filter_name_text2')}
167
167
  onCheckedChange={checked => {
168
168
  state.dynamicTagChecked = checked
169
- }}/>
169
+ }} />
170
170
  </View>
171
- <Spacer height={cx(10)}/>
171
+ <Spacer height={cx(10)} />
172
172
  {
173
173
  state.scenes.length >= MAX_MOOD_COUNT &&
174
- <View style={styles.infoLine}>
175
- <Spacer height={cx(10)}/>
176
- <InfoText
177
- icon={res.ic_warning_amber}
178
- text={Strings.getLang('mood_overview_warning_max_number_text')}
179
- contentColor={'#ff9500'}/>
180
- <Spacer height={cx(6)}/>
181
- </View>
174
+ <View style={styles.infoLine}>
175
+ <Spacer height={cx(10)} />
176
+ <InfoText
177
+ icon={res.ic_warning_amber}
178
+ text={Strings.getLang('mood_overview_warning_max_number_text')}
179
+ contentColor={'#ff9500'} />
180
+ <Spacer height={cx(6)} />
181
+ </View>
182
182
  }
183
183
  <FlatList
184
184
  data={state.filteredMoods}
185
- renderItem={({item}) => {
185
+ renderItem={({ item }) => {
186
186
  return (
187
187
  <MoodItem
188
188
  enable={workMode === SCENE && state.currentScene?.id === item.id}
@@ -227,13 +227,13 @@ const MoodPage = () => {
227
227
  )
228
228
  state.currentScene = checkMoodData(item)
229
229
  state.loading = false
230
- }}/>
230
+ }} />
231
231
  )
232
232
  }}
233
- ListHeaderComponent={() => (<Spacer height={cx(10)}/>)}
234
- ItemSeparatorComponent={() => (<Spacer/>)}
235
- ListFooterComponent={() => (<Spacer/>)}
236
- keyExtractor={item => `${item.id}`}/>
233
+ ListHeaderComponent={() => (<Spacer height={cx(10)} />)}
234
+ ItemSeparatorComponent={() => (<Spacer />)}
235
+ ListFooterComponent={() => (<Spacer />)}
236
+ keyExtractor={item => `${item.id}`} />
237
237
  </Page>
238
238
  <CustomListDialog
239
239
  show={state.showAddMoodPopover}
@@ -252,7 +252,7 @@ const MoodPage = () => {
252
252
  value: false,
253
253
  },
254
254
  ]}
255
- onItemPress={onAddMoodDialogItemClick}/>
255
+ onItemPress={onAddMoodDialogItemClick} />
256
256
  </>
257
257
  )
258
258
  }
@@ -266,15 +266,14 @@ const styles = StyleSheet.create({
266
266
  marginHorizontal: cx(24),
267
267
  },
268
268
  addMoodPopover: {
269
- width: cx(171),
270
- height: cx(90.5),
271
- marginStart: cx(156),
272
- marginTop: cx(105),
269
+ position: 'absolute',
270
+ right: cx(60),
271
+ top: Platform.OS === 'android' ? cx(90) : cx(130),
272
+ maxWidth: cx(200),
273
273
  backgroundColor: '#fff',
274
274
  },
275
275
  popoverItem: {
276
- width: cx(171),
277
- height: cx(45),
276
+ padding: cx(5),
278
277
  alignItems: 'flex-start',
279
278
  },
280
279
  })
@@ -9,13 +9,13 @@ import {ScrollView, StyleSheet, Text, View} from 'react-native'
9
9
  import Card from '@ledvance/base/src/components/Card'
10
10
  import Spacer from '@ledvance/base/src/components/Spacer'
11
11
  import {hsv2Hex, mapFloatToRange} from '@ledvance/base/src/utils'
12
- import {COLOUR, useWorkMode, WHITE} from '../../hooks/DeviceDpStateHooks'
12
+ import {COLOUR, SCENE, useWorkMode, WHITE} from '../../hooks/DeviceDpStateHooks'
13
13
  import {cctToColor} from '@ledvance/base/src/utils/cctUtils'
14
14
  import res from '@ledvance/base/src/res'
15
15
  import {cloneDeep, find, isEqual} from 'lodash'
16
16
  import TextButton from '@ledvance/base/src/components/TextButton'
17
17
  import {saveScene, useScene} from '../scene/SceneAction'
18
- import {useDeviceId, useFanMaxSpeed, useRole} from '@ledvance/base/src/models/modules/NativePropsSlice'
18
+ import {useDeviceId, useFanMaxSpeed} from '@ledvance/base/src/models/modules/NativePropsSlice'
19
19
  import {SceneNodeInfo, SceneUIState} from '../scene/SceneInfo'
20
20
  import LampAdjustView from '@ledvance/base/src/components/LampAdjustView'
21
21
  import FanAdjustView from '@ledvance/base/src/components/FanAdjustView'
@@ -45,9 +45,8 @@ const StaticMoodEditorPage = () => {
45
45
  const params = cloneDeep(routeParams)
46
46
  const moduleParams = params.moduleParams
47
47
  const deviceId = useDeviceId()
48
- const role = useRole()
49
48
  const [moodId, setScene] = useScene(moduleParams.sceneDpCode)
50
- const [, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
49
+ const [workMode, setWorkMode] = useWorkMode(moduleParams.workModeDpCode)
51
50
 
52
51
  const state = useReactive<StaticMoodEditorPageState>({
53
52
  headline: '',
@@ -103,7 +102,7 @@ const StaticMoodEditorPage = () => {
103
102
  )
104
103
  if (saveRes.success) {
105
104
  if (list.length > 0) {
106
- if (isDelete && currentMood.id === moodId) {
105
+ if (isDelete && currentMood.id === moodId && workMode === SCENE) {
107
106
  const setSceneRes = await setScene(
108
107
  deviceId,
109
108
  list[0],
@@ -68,6 +68,8 @@ const MoodSetting = (props: MoodSettingProps) => {
68
68
  })
69
69
  }
70
70
 
71
+ }else{
72
+ setSendDps(cloneDeep(moods[0]), 'actionScene')
71
73
  }
72
74
  }, [])
73
75