@ledvance/ui-biz-bundle 1.1.141 → 1.1.143

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.
Files changed (31) hide show
  1. package/package.json +1 -1
  2. package/src/hooks/DeviceDpStateHooks.ts +1 -1
  3. package/src/modules/flags/FlagPage.tsx +4 -1
  4. package/src/modules/mood/MixMood/RecommendMixMoodItem.tsx +1 -1
  5. package/src/modules/mood/RecommendMoodItem.tsx +1 -1
  6. package/src/modules/timeSchedule/TimeScheduleEditpage.tsx +1 -1
  7. package/src/modules/timer/TimerPage.tsx +1 -1
  8. package/src/newModules/biorhythm/BiorhythmActions.ts +403 -451
  9. package/src/newModules/biorhythm/BiorhythmBean.ts +230 -230
  10. package/src/newModules/biorhythm/BiorhythmEditPage.tsx +18 -20
  11. package/src/newModules/biorhythm/BiorhythmPage.tsx +653 -698
  12. package/src/newModules/biorhythm/IconSelect.tsx +88 -88
  13. package/src/newModules/biorhythm/Router.ts +33 -33
  14. package/src/newModules/biorhythm/iconListData.ts +30 -30
  15. package/src/newModules/biorhythm/pIdList.ts +35 -35
  16. package/src/newModules/energyConsumption/EnergyConsumptionActions.ts +66 -28
  17. package/src/newModules/energyConsumption/EnergyConsumptionCard.tsx +172 -0
  18. package/src/newModules/energyConsumption/EnergyConsumptionChart.tsx +204 -118
  19. package/src/newModules/energyConsumption/EnergyConsumptionDetail.tsx +3 -0
  20. package/src/newModules/energyConsumption/EnergyConsumptionPage.tsx +16 -0
  21. package/src/newModules/energyConsumption/co2Data.ts +5 -0
  22. package/src/newModules/energyConsumption/component/NewBarChart.tsx +172 -168
  23. package/src/newModules/energyConsumption/component/PowerLineChart.tsx +108 -0
  24. package/src/newModules/energyConsumption/res/energy-chart.png +0 -0
  25. package/src/newModules/energyConsumption/res/index.ts +3 -0
  26. package/src/newModules/fixedTime/FixedTimeDetailPage.tsx +1 -1
  27. package/src/newModules/mood/RecommendMoodItem.tsx +1 -1
  28. package/src/newModules/sleepWakeUp/SleepWakeUpDetailPage.tsx +1 -1
  29. package/src/newModules/swithInching/SwithInching.tsx +1 -1
  30. package/src/newModules/timeSchedule/TimeScheduleActions.ts +12 -12
  31. package/tsconfig.json +73 -46
@@ -1,230 +1,230 @@
1
- import I18n from '@ledvance/base/src/i18n'
2
- import res from '@ledvance/base/src/res'
3
-
4
- export enum BiorhythmGradientType {
5
- // 全程渐变
6
- EntireGradient,
7
- // 直接渐变
8
- DirectGradient,
9
- }
10
-
11
- export const BiorhythmGradientTypeMap = {
12
- [BiorhythmGradientType.EntireGradient]: 'entireGradient',
13
- [BiorhythmGradientType.DirectGradient]: 'directGradient',
14
- }
15
-
16
- export const BiorhythmGradientTypeMap2 = {
17
- entireGradient: BiorhythmGradientType.EntireGradient,
18
- directGradient: BiorhythmGradientType.DirectGradient,
19
- }
20
-
21
- export interface BiorhythmBean {
22
- enable: boolean;
23
- repeatPeriod: Period[];
24
- gradient: BiorhythmGradientType;
25
- planList: Plan[];
26
- }
27
-
28
- export interface Plan {
29
- index: number;
30
- enable: boolean;
31
- icon: string;
32
- time: number;
33
- name: string;
34
- colorTemperature: number;
35
- brightness: number;
36
- action: Action[];
37
- iconId?: any;
38
- }
39
-
40
- export interface Action {
41
- uri: string;
42
- startValue: string;
43
- }
44
-
45
- export interface Period {
46
- index: number;
47
- title: string;
48
- enabled: boolean;
49
- }
50
-
51
- export function colorTemperatureValue(percentageValue) {
52
- // 38 = (6500 - 2700) / 100
53
- return 2700 + 38 * percentageValue
54
- }
55
-
56
- export function colorTempPercent(colorTemp: number): number {
57
- return Math.round((colorTemp - 2700) / 38)
58
- }
59
-
60
- export function getDefBiorhythmUIState(): BiorhythmBean {
61
- const icon1 = res.biorhythom_Icon1
62
- const icon12 = res.biorhythom_Icon3
63
- const icon2 = res.biorhythom_Icon5
64
- const icon3 = res.biorhythom_Icon2
65
- const icon4 = res.biorhythom_Icon9
66
- return {
67
- enable: false, // 生物节律默认为关
68
- repeatPeriod: getDefRepeatPeriod(),
69
- gradient: BiorhythmGradientType.EntireGradient,
70
- planList: [
71
- {
72
- index: 0,
73
- icon: icon1,
74
- time: 360,
75
- name: I18n.getLang('bio_ryhthm_default_field_text'),
76
- colorTemperature: 0,
77
- brightness: 0,
78
- action: [
79
- {
80
- uri: 'model/attribute/set/LightCtrl/ColorTemperature',
81
- startValue: `${colorTemperatureValue(0)}`,
82
- },
83
- {
84
- uri: 'model/attribute/set/LightCtrl/Brightness',
85
- startValue: '0',
86
- },
87
- ],
88
- enable: true,
89
- iconId: 1,
90
- },
91
- {
92
- index: 1,
93
- icon: icon12,
94
- time: 390,
95
- name: I18n.getLang('bio_ryhthm_default_field_text2'),
96
- colorTemperature: 25,
97
- brightness: 20,
98
- action: [
99
- {
100
- uri: 'model/attribute/set/LightCtrl/ColorTemperature',
101
- startValue: `${colorTemperatureValue(25)}`,
102
- },
103
- {
104
- uri: 'model/attribute/set/LightCtrl/Brightness',
105
- startValue: '20',
106
- },
107
- ],
108
- enable: true,
109
- iconId: 5,
110
- },
111
- {
112
- index: 2,
113
- icon: icon2,
114
- time: 540,
115
- name: I18n.getLang('bio_ryhthm_default_field_text3'),
116
- colorTemperature: 100,
117
- brightness: 100,
118
- action: [
119
- {
120
- uri: 'model/attribute/set/LightCtrl/ColorTemperature',
121
- startValue: `${colorTemperatureValue(100)}`,
122
- },
123
- {
124
- uri: 'model/attribute/set/LightCtrl/Brightness',
125
- startValue: '100',
126
- },
127
- ],
128
- enable: true,
129
- iconId: 2,
130
- },
131
- {
132
- index: 3,
133
- icon: icon3,
134
- time: 1200,
135
- name: I18n.getLang('bio_ryhthm_default_field_text4'),
136
- colorTemperature: 50,
137
- brightness: 80,
138
- action: [
139
- {
140
- uri: 'model/attribute/set/LightCtrl/ColorTemperature',
141
- startValue: `${colorTemperatureValue(50)}`,
142
- },
143
- {
144
- uri: 'model/attribute/set/LightCtrl/Brightness',
145
- startValue: '80',
146
- },
147
- ],
148
- enable: true,
149
- iconId: 9,
150
- },
151
- {
152
- index: 4,
153
- icon: icon4,
154
- time: 1410,
155
- name: I18n.getLang('bio_ryhthm_default_field_text5'),
156
- colorTemperature: 0,
157
- brightness: 0,
158
- action: [
159
- {
160
- uri: 'model/attribute/set/LightCtrl/ColorTemperature',
161
- startValue: `${colorTemperatureValue(0)}`,
162
- },
163
- {
164
- uri: 'model/attribute/set/LightCtrl/Brightness',
165
- startValue: '0',
166
- },
167
- ],
168
- enable: true,
169
- iconId: 3,
170
- },
171
- ],
172
- }
173
- }
174
-
175
- export function getDefRepeatPeriod(): Period[] {
176
- return [
177
- {
178
- index: 7,
179
- title: I18n.getLang('bio_ryhthm_default_weekday7_text'),
180
- enabled: true,
181
- },
182
- {
183
- index: 1,
184
- title: I18n.getLang('bio_ryhthm_default_weekday1_text'),
185
- enabled: true,
186
- },
187
- {
188
- index: 2,
189
- title: I18n.getLang('bio_ryhthm_default_weekday2_text'),
190
- enabled: true,
191
- },
192
- {
193
- index: 3,
194
- title: I18n.getLang('bio_ryhthm_default_weekday3_text'),
195
- enabled: true,
196
- },
197
- {
198
- index: 4,
199
- title: I18n.getLang('bio_ryhthm_default_weekday4_text'),
200
- enabled: true,
201
- },
202
- {
203
- index: 5,
204
- title: I18n.getLang('bio_ryhthm_default_weekday5_text'),
205
- enabled: true,
206
- },
207
- {
208
- index: 6,
209
- title: I18n.getLang('bio_ryhthm_default_weekday6_text'),
210
- enabled: true,
211
- },
212
- ]
213
- }
214
-
215
- export interface RemoteBiorhythmBean {
216
- enable: boolean;
217
- repeatPeriod: number[];
218
- gradientWay: string;
219
- rhythmPlan: RemoteBiorhythmPlan[];
220
- }
221
-
222
- interface RemoteBiorhythmPlan {
223
- iconId: any;
224
- name: string;
225
- rhythmIcon: string;
226
- enable: boolean;
227
- startTime: string;
228
- sustain: number; // 持续时间涂鸦这边没有,直接用来存ID
229
- action: Action[];
230
- }
1
+ import I18n from '@ledvance/base/src/i18n'
2
+ import res from '@ledvance/base/src/res'
3
+
4
+ export enum BiorhythmGradientType {
5
+ // 全程渐变
6
+ EntireGradient,
7
+ // 直接渐变
8
+ DirectGradient,
9
+ }
10
+
11
+ export const BiorhythmGradientTypeMap = {
12
+ [BiorhythmGradientType.EntireGradient]: 'entireGradient',
13
+ [BiorhythmGradientType.DirectGradient]: 'directGradient',
14
+ }
15
+
16
+ export const BiorhythmGradientTypeMap2 = {
17
+ entireGradient: BiorhythmGradientType.EntireGradient,
18
+ directGradient: BiorhythmGradientType.DirectGradient,
19
+ }
20
+
21
+ export interface BiorhythmBean {
22
+ enable: boolean
23
+ weeks: number[]
24
+ gradient: BiorhythmGradientType
25
+ planList: Plan[]
26
+ }
27
+
28
+ export interface Plan {
29
+ index: number;
30
+ enable: boolean;
31
+ icon: string;
32
+ time: number;
33
+ name: string;
34
+ colorTemperature: number;
35
+ brightness: number;
36
+ action: Action[];
37
+ iconId?: any;
38
+ }
39
+
40
+ export interface Action {
41
+ uri: string;
42
+ startValue: string;
43
+ }
44
+
45
+ export interface Period {
46
+ index: number;
47
+ title: string;
48
+ enabled: boolean;
49
+ }
50
+
51
+ export function colorTemperatureValue(percentageValue) {
52
+ // 38 = (6500 - 2700) / 100
53
+ return 2700 + 38 * percentageValue
54
+ }
55
+
56
+ export function colorTempPercent(colorTemp: number): number {
57
+ return Math.round((colorTemp - 2700) / 38)
58
+ }
59
+
60
+ export function getDefBiorhythmUIState(): BiorhythmBean {
61
+ const icon1 = res.biorhythom_icon1
62
+ const icon12 = res.biorhythom_icon3
63
+ const icon2 = res.biorhythom_icon5
64
+ const icon3 = res.biorhythom_icon2
65
+ const icon4 = res.biorhythom_icon9
66
+ return {
67
+ enable: false, // 生物节律默认为关
68
+ weeks: [1,1,1,1,1,1,1],
69
+ gradient: BiorhythmGradientType.EntireGradient,
70
+ planList: [
71
+ {
72
+ index: 0,
73
+ icon: icon1,
74
+ time: 360,
75
+ name: I18n.getLang('bio_ryhthm_default_field_text'),
76
+ colorTemperature: 0,
77
+ brightness: 0,
78
+ action: [
79
+ {
80
+ uri: 'model/attribute/set/LightCtrl/ColorTemperature',
81
+ startValue: `${colorTemperatureValue(0)}`,
82
+ },
83
+ {
84
+ uri: 'model/attribute/set/LightCtrl/Brightness',
85
+ startValue: '0',
86
+ },
87
+ ],
88
+ enable: true,
89
+ iconId: 1,
90
+ },
91
+ {
92
+ index: 1,
93
+ icon: icon12,
94
+ time: 390,
95
+ name: I18n.getLang('bio_ryhthm_default_field_text2'),
96
+ colorTemperature: 25,
97
+ brightness: 20,
98
+ action: [
99
+ {
100
+ uri: 'model/attribute/set/LightCtrl/ColorTemperature',
101
+ startValue: `${colorTemperatureValue(25)}`,
102
+ },
103
+ {
104
+ uri: 'model/attribute/set/LightCtrl/Brightness',
105
+ startValue: '20',
106
+ },
107
+ ],
108
+ enable: true,
109
+ iconId: 5,
110
+ },
111
+ {
112
+ index: 2,
113
+ icon: icon2,
114
+ time: 540,
115
+ name: I18n.getLang('bio_ryhthm_default_field_text3'),
116
+ colorTemperature: 100,
117
+ brightness: 100,
118
+ action: [
119
+ {
120
+ uri: 'model/attribute/set/LightCtrl/ColorTemperature',
121
+ startValue: `${colorTemperatureValue(100)}`,
122
+ },
123
+ {
124
+ uri: 'model/attribute/set/LightCtrl/Brightness',
125
+ startValue: '100',
126
+ },
127
+ ],
128
+ enable: true,
129
+ iconId: 2,
130
+ },
131
+ {
132
+ index: 3,
133
+ icon: icon3,
134
+ time: 1200,
135
+ name: I18n.getLang('bio_ryhthm_default_field_text4'),
136
+ colorTemperature: 50,
137
+ brightness: 80,
138
+ action: [
139
+ {
140
+ uri: 'model/attribute/set/LightCtrl/ColorTemperature',
141
+ startValue: `${colorTemperatureValue(50)}`,
142
+ },
143
+ {
144
+ uri: 'model/attribute/set/LightCtrl/Brightness',
145
+ startValue: '80',
146
+ },
147
+ ],
148
+ enable: true,
149
+ iconId: 9,
150
+ },
151
+ {
152
+ index: 4,
153
+ icon: icon4,
154
+ time: 1410,
155
+ name: I18n.getLang('bio_ryhthm_default_field_text5'),
156
+ colorTemperature: 0,
157
+ brightness: 0,
158
+ action: [
159
+ {
160
+ uri: 'model/attribute/set/LightCtrl/ColorTemperature',
161
+ startValue: `${colorTemperatureValue(0)}`,
162
+ },
163
+ {
164
+ uri: 'model/attribute/set/LightCtrl/Brightness',
165
+ startValue: '0',
166
+ },
167
+ ],
168
+ enable: true,
169
+ iconId: 3,
170
+ },
171
+ ],
172
+ }
173
+ }
174
+
175
+ export function getDefRepeatPeriod(): Period[] {
176
+ return [
177
+ {
178
+ index: 7,
179
+ title: I18n.getLang('bio_ryhthm_default_weekday7_text'),
180
+ enabled: true,
181
+ },
182
+ {
183
+ index: 1,
184
+ title: I18n.getLang('bio_ryhthm_default_weekday1_text'),
185
+ enabled: true,
186
+ },
187
+ {
188
+ index: 2,
189
+ title: I18n.getLang('bio_ryhthm_default_weekday2_text'),
190
+ enabled: true,
191
+ },
192
+ {
193
+ index: 3,
194
+ title: I18n.getLang('bio_ryhthm_default_weekday3_text'),
195
+ enabled: true,
196
+ },
197
+ {
198
+ index: 4,
199
+ title: I18n.getLang('bio_ryhthm_default_weekday4_text'),
200
+ enabled: true,
201
+ },
202
+ {
203
+ index: 5,
204
+ title: I18n.getLang('bio_ryhthm_default_weekday5_text'),
205
+ enabled: true,
206
+ },
207
+ {
208
+ index: 6,
209
+ title: I18n.getLang('bio_ryhthm_default_weekday6_text'),
210
+ enabled: true,
211
+ },
212
+ ]
213
+ }
214
+
215
+ export interface RemoteBiorhythmBean {
216
+ enable: boolean;
217
+ repeatPeriod: number[];
218
+ gradientWay: string;
219
+ rhythmPlan: RemoteBiorhythmPlan[];
220
+ }
221
+
222
+ interface RemoteBiorhythmPlan {
223
+ iconId: any;
224
+ name: string;
225
+ rhythmIcon: string;
226
+ enable: boolean;
227
+ startTime: string;
228
+ sustain: number; // 持续时间涂鸦这边没有,直接用来存ID
229
+ action: Action[];
230
+ }
@@ -1,24 +1,24 @@
1
- import React, { useCallback, useMemo } from 'react'
2
- import { Image, ScrollView, StyleSheet, Text, TouchableOpacity, View } from 'react-native'
3
- import { useNavigation, useRoute } from '@react-navigation/native'
4
- import { TimerPicker, Utils } from 'tuya-panel-kit'
5
- import { useReactive } from 'ahooks'
6
- import { colorTemperatureValue, Plan } from './BiorhythmBean'
7
- import iconList from './iconListData'
8
- import I18n from '@ledvance/base/src/i18n'
9
- import TextField from '@ledvance/base/src/components/TextField'
10
- import { cctToColor } from '@ledvance/base/src/utils/cctUtils'
1
+ import Card from '@ledvance/base/src/components/Card'
11
2
  import ColorTempAdjustView from '@ledvance/base/src/components/ColorTempAdjustView'
12
3
  import DeleteButton from '@ledvance/base/src/components/DeleteButton'
13
- import res from '@ledvance/base/src/res'
14
- import { ui_biz_routerKey } from "../../navigation/Routers";
15
- import { cloneDeep, isEqual } from 'lodash'
16
- import { useSystemTimeFormate } from '@ledvance/base/src/models/modules/NativePropsSlice'
17
4
  import Page from '@ledvance/base/src/components/Page'
18
- import Card from '@ledvance/base/src/components/Card'
19
5
  import Spacer from '@ledvance/base/src/components/Spacer'
20
- import { showDialog } from '@ledvance/base/src/utils/common'
6
+ import TextField from '@ledvance/base/src/components/TextField'
21
7
  import ThemeType from '@ledvance/base/src/config/themeType'
8
+ import I18n from '@ledvance/base/src/i18n'
9
+ import { useSystemTimeFormate } from '@ledvance/base/src/models/modules/NativePropsSlice'
10
+ import res from '@ledvance/base/src/res'
11
+ import { cctToColor } from '@ledvance/base/src/utils/cctUtils'
12
+ import { showDialog } from '@ledvance/base/src/utils/common'
13
+ import { useNavigation, useRoute } from '@react-navigation/native'
14
+ import { useReactive } from 'ahooks'
15
+ import { cloneDeep, isEqual } from 'lodash'
16
+ import React, { useCallback, useMemo } from 'react'
17
+ import { Image, ScrollView, StyleSheet, Text, TouchableOpacity, View } from 'react-native'
18
+ import { TimerPicker, Utils } from 'tuya-panel-kit'
19
+ import { ui_biz_routerKey } from '../../navigation/Routers'
20
+ import { colorTemperatureValue, Plan } from './BiorhythmBean'
21
+ import iconList from './iconListData'
22
22
 
23
23
  const cx = Utils.RatioUtils.convertX
24
24
  const { withTheme } = Utils.ThemeUtils
@@ -78,13 +78,11 @@ const BiorhythmEditPage = (props: { theme?: ThemeType }) => {
78
78
 
79
79
 
80
80
  const minimumTipEnable = () => {
81
- const enable = minimumEnable(state.planData)
82
- return enable
81
+ return minimumEnable(state.planData)
83
82
  }
84
83
 
85
84
  const setImg = () => {
86
- const imgIcon = iconList?.find(val => val?.id === state.planData.iconId)?.icon || ''
87
- return imgIcon
85
+ return iconList?.find(val => val?.id === state.planData.iconId)?.icon || ''
88
86
  }
89
87
 
90
88
  const nameRepeatFlag = useMemo(() =>{