@ledvance/ui-biz-bundle 1.1.59 → 1.1.62

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 (122) hide show
  1. package/package.json +1 -1
  2. package/src/modules/biorhythm/BiorhythmPage.tsx +2 -0
  3. package/src/modules/flags/FlagActions.ts +1 -0
  4. package/src/modules/flags/FlagEditPage.tsx +22 -14
  5. package/src/modules/flags/FlagPage.tsx +9 -19
  6. package/src/modules/mood/DynamicMoodEditorPage.tsx +12 -14
  7. package/src/modules/mood/FantasyMoodEditPage.tsx +12 -14
  8. package/src/modules/mood/StaticMoodEditorPage.tsx +12 -13
  9. package/src/modules/timer/TimerPage.tsx +58 -56
  10. package/src/newModules/biorhythm/BiorhythmActions.ts +374 -0
  11. package/src/newModules/biorhythm/BiorhythmBean.ts +230 -0
  12. package/src/newModules/biorhythm/BiorhythmEditPage.tsx +267 -0
  13. package/src/newModules/biorhythm/BiorhythmPage.tsx +638 -0
  14. package/src/newModules/biorhythm/IconSelect.tsx +85 -0
  15. package/src/newModules/biorhythm/Router.ts +34 -0
  16. package/src/newModules/biorhythm/circular/ItemIcon.d.ts +22 -0
  17. package/src/newModules/biorhythm/circular/ItemIcon.tsx +173 -0
  18. package/src/newModules/biorhythm/circular/Progress.d.ts +24 -0
  19. package/src/newModules/biorhythm/circular/Progress.tsx +372 -0
  20. package/src/newModules/biorhythm/circular/TimeCircular.d.ts +11 -0
  21. package/src/newModules/biorhythm/circular/TimeCircular.tsx +64 -0
  22. package/src/newModules/biorhythm/circular/biorhythm_plantimer.png +0 -0
  23. package/src/newModules/biorhythm/circular/rhythm_icon.png +0 -0
  24. package/src/newModules/biorhythm/iconListData.ts +30 -0
  25. package/src/newModules/biorhythm/pIdList.ts +36 -0
  26. package/src/newModules/biorhythm/res/BiologicalRes.d.ts +43 -0
  27. package/src/newModules/biorhythm/res/BiologicalRes.ts +42 -0
  28. package/src/newModules/biorhythm/res/Biological_Rhythm.png +0 -0
  29. package/src/newModules/biorhythm/res/Biological_Rhythm_12.png +0 -0
  30. package/src/newModules/biorhythm/res/Biological_Rhythm_new.png +0 -0
  31. package/src/newModules/biorhythm/res/Biological_Rhythm_new_12.png +0 -0
  32. package/src/newModules/biorhythm/res/iconsMaterialOutlinedAccountGroups.png +0 -0
  33. package/src/newModules/biorhythm/res/iconsMaterialOutlinedAccountGroups@2x.png +0 -0
  34. package/src/newModules/biorhythm/res/iconsMaterialOutlinedAccountGroups@3x.png +0 -0
  35. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavAdd.png +0 -0
  36. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavAdd@2x.png +0 -0
  37. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavAdd@3x.png +0 -0
  38. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavArrowForwardIos.png +0 -0
  39. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavArrowForwardIos@2x.png +0 -0
  40. package/src/newModules/biorhythm/res/iconsMaterialOutlinedArrowsNavArrowForwardIos@3x.png +0 -0
  41. package/src/newModules/biorhythm/res/iconsMaterialOutlinedBuildingsHome.png +0 -0
  42. package/src/newModules/biorhythm/res/iconsMaterialOutlinedBuildingsHome@2x.png +0 -0
  43. package/src/newModules/biorhythm/res/iconsMaterialOutlinedBuildingsHome@3x.png +0 -0
  44. package/src/newModules/biorhythm/res/iconsMaterialOutlinedEditorFavoriteBorder.png +0 -0
  45. package/src/newModules/biorhythm/res/iconsMaterialOutlinedEditorFavoriteBorder@2x.png +0 -0
  46. package/src/newModules/biorhythm/res/iconsMaterialOutlinedEditorFavoriteBorder@3x.png +0 -0
  47. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBed.png +0 -0
  48. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBed@2x.png +0 -0
  49. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBed@3x.png +0 -0
  50. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBusinessCenter.png +0 -0
  51. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBusinessCenter@2x.png +0 -0
  52. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherBusinessCenter@3x.png +0 -0
  53. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherChair.png +0 -0
  54. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherChair@2x.png +0 -0
  55. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherChair@3x.png +0 -0
  56. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherCoffee.png +0 -0
  57. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherCoffee@2x.png +0 -0
  58. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherCoffee@3x.png +0 -0
  59. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherDirectionsCar.png +0 -0
  60. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherDirectionsCar@2x.png +0 -0
  61. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherDirectionsCar@3x.png +0 -0
  62. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherFitnessCenter.png +0 -0
  63. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherFitnessCenter@2x.png +0 -0
  64. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherFitnessCenter@3x.png +0 -0
  65. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherHeadphones.png +0 -0
  66. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherHeadphones@2x.png +0 -0
  67. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherHeadphones@3x.png +0 -0
  68. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMenuBook.png +0 -0
  69. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMenuBook@2x.png +0 -0
  70. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMenuBook@3x.png +0 -0
  71. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMusicNote.png +0 -0
  72. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMusicNote@2x.png +0 -0
  73. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherMusicNote@3x.png +0 -0
  74. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherNotificationsNone.png +0 -0
  75. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherNotificationsNone@2x.png +0 -0
  76. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherNotificationsNone@3x.png +0 -0
  77. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherPottedPlant.png +0 -0
  78. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherPottedPlant@2x.png +0 -0
  79. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherPottedPlant@3x.png +0 -0
  80. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherRestaurant.png +0 -0
  81. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherRestaurant@2x.png +0 -0
  82. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherRestaurant@3x.png +0 -0
  83. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSentimentSatisfied.png +0 -0
  84. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSentimentSatisfied@2x.png +0 -0
  85. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSentimentSatisfied@3x.png +0 -0
  86. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSportsEsports.png +0 -0
  87. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSportsEsports@2x.png +0 -0
  88. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherSportsEsports@3x.png +0 -0
  89. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherTv.png +0 -0
  90. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherTv@2x.png +0 -0
  91. package/src/newModules/biorhythm/res/iconsMaterialOutlinedOtherTv@3x.png +0 -0
  92. package/src/newModules/biorhythm/res/iconsMaterialOutlinedTimeAccessAlarm.png +0 -0
  93. package/src/newModules/biorhythm/res/iconsMaterialOutlinedTimeAccessAlarm@2x.png +0 -0
  94. package/src/newModules/biorhythm/res/iconsMaterialOutlinedTimeAccessAlarm@3x.png +0 -0
  95. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherBedtime.png +0 -0
  96. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherBedtime@2x.png +0 -0
  97. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherBedtime@3x.png +0 -0
  98. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherPartlyCloudyDay.png +0 -0
  99. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherPartlyCloudyDay@2x.png +0 -0
  100. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherPartlyCloudyDay@3x.png +0 -0
  101. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherStarOutline.png +0 -0
  102. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherStarOutline@2x.png +0 -0
  103. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherStarOutline@3x.png +0 -0
  104. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbSunny.png +0 -0
  105. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbSunny@2x.png +0 -0
  106. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbSunny@3x.png +0 -0
  107. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbTwilight.png +0 -0
  108. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbTwilight@2x.png +0 -0
  109. package/src/newModules/biorhythm/res/iconsMaterialOutlinedWheatherWbTwilight@3x.png +0 -0
  110. package/src/newModules/energyConsumption/EnergyConsumptionDetail.tsx +84 -83
  111. package/src/newModules/energyConsumption/EnergyConsumptionPage.tsx +133 -132
  112. package/src/newModules/energyConsumption/component/EnergyModal.tsx +119 -117
  113. package/src/newModules/energyConsumption/component/Overview.tsx +38 -36
  114. package/src/newModules/mood/AddMoodPage.tsx +37 -21
  115. package/src/newModules/mood/DynamicMoodEditorPage.tsx +7 -2
  116. package/src/newModules/mood/MixDynamicMoodEditor.tsx +8 -2
  117. package/src/newModules/mood/StaticMoodEditorPage.tsx +9 -2
  118. package/src/newModules/timeSchedule/Interface.ts +1 -0
  119. package/src/newModules/timeSchedule/TimeScheduleDetailPage.tsx +203 -202
  120. package/src/newModules/timeSchedule/TimeSchedulePage.tsx +35 -34
  121. package/src/newModules/timeSchedule/components/ManuaSettings.tsx +11 -10
  122. package/src/newModules/timeSchedule/components/ScheduleCard.tsx +63 -60
@@ -0,0 +1,267 @@
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 BiologicalRes from './res/BiologicalRes'
11
+ import { cctToColor } from '@ledvance/base/src/utils/cctUtils'
12
+ import ColorTempAdjustView from '@ledvance/base/src/components/ColorTempAdjustView'
13
+ import DeleteButton from '@ledvance/base/src/components/DeleteButton'
14
+ import res from '@ledvance/base/src/res'
15
+ import { ui_biz_routerKey } from "../../navigation/Routers";
16
+ import { cloneDeep, isEqual } from 'lodash'
17
+ import { useSystemTimeFormate } from '@ledvance/base/src/models/modules/NativePropsSlice'
18
+ import Page from '@ledvance/base/src/components/Page'
19
+ import Card from '@ledvance/base/src/components/Card'
20
+ import Spacer from '@ledvance/base/src/components/Spacer'
21
+ import { showDialog } from '@ledvance/base/src/utils/common'
22
+
23
+ const cx = Utils.RatioUtils.convertX
24
+
25
+ export interface BiorhythmEditPageParams {
26
+ planData: Plan
27
+ isAdd: boolean
28
+ onPlanEdited: (isAdd: boolean, plan: Plan) => void
29
+ onPlanDelete: (id: number) => void
30
+ minimumEnable: (plan: Plan) => boolean
31
+ nameRepeat: (plan: Plan) => boolean
32
+ iconIdList?: any
33
+ isMixRGBWLamp: boolean
34
+ isSupportTemperature: boolean
35
+ isSupportBrightness: boolean
36
+ showDeleteBtn?: boolean
37
+ }
38
+
39
+ const BiorhythmEditPage = () => {
40
+ const navigation = useNavigation()
41
+ const route = useRoute<any>()
42
+ const {
43
+ planData,
44
+ isAdd,
45
+ onPlanEdited,
46
+ onPlanDelete,
47
+ minimumEnable,
48
+ nameRepeat,
49
+ iconIdList,
50
+ isMixRGBWLamp,
51
+ isSupportTemperature,
52
+ isSupportBrightness,
53
+ showDeleteBtn
54
+ } = route.params as BiorhythmEditPageParams
55
+ const is24Hour = useSystemTimeFormate()
56
+ const state = useReactive({
57
+ iconIdList,
58
+ planData: cloneDeep(planData),
59
+ backStatus: false,
60
+ })
61
+
62
+ const onTopBarRightBtnClick = useCallback(() => {
63
+ if (state.backStatus) return
64
+ state.backStatus = true
65
+ onPlanEdited(isAdd, {
66
+ ...state.planData,
67
+ icon: iconList?.find(val => val?.id === state.planData.iconId)?.icon || '',
68
+ })
69
+ state.backStatus = false
70
+ navigation.goBack()
71
+ }, [state.backStatus, state.planData])
72
+
73
+ const onDeleteBtnClick = useCallback(() => {
74
+ onPlanDelete(state.planData.index)
75
+ navigation.goBack()
76
+ }, [])
77
+
78
+
79
+ const minimumTipEnable = () => {
80
+ const enable = minimumEnable(state.planData)
81
+ return enable
82
+ }
83
+
84
+ const setImg = () => {
85
+ const imgIcon = iconList?.find(val => val?.id === state.planData.iconId)?.icon || ''
86
+ return imgIcon
87
+ }
88
+
89
+ const nameRepeatFlag = useMemo(() =>{
90
+ return nameRepeat(state.planData)
91
+ }, [state.planData.name])
92
+
93
+ const checkBiorhythmDataChanged = useMemo(() =>{
94
+ return isEqual(state.planData, planData)
95
+ }, [JSON.stringify(state.planData), planData])
96
+
97
+ const canSaveMoodData = useMemo(() =>{
98
+ return state.planData.name.length > 0 && state.planData.name.length < 33 && !nameRepeatFlag && !checkBiorhythmDataChanged && !minimumTipEnable()
99
+ }, [nameRepeatFlag, state.planData.name, checkBiorhythmDataChanged])
100
+
101
+ return (
102
+ <Page
103
+ backText={I18n.getLang('add_new_trigger_time_system_back_text')}
104
+ loading={state.backStatus}
105
+ backDialogTitle={I18n.getLang('manage_user_unsaved_changes_dialog_headline')}
106
+ backDialogContent={I18n.getLang('cancel_dialog_leave_unsaved_bio_rhythm_note')}
107
+ showBackDialog={!checkBiorhythmDataChanged}
108
+ rightButtonIcon={canSaveMoodData ? res.ic_check : res.ic_uncheck}
109
+ rightButtonIconClick={canSaveMoodData ? onTopBarRightBtnClick : undefined}
110
+ headlineText={I18n.getLang(isAdd ? 'add_new_trigger_time_headline_text' : 'edit_trigger_time_headline_text')}
111
+ >
112
+ <ScrollView>
113
+ <View
114
+ style={{
115
+ marginHorizontal: cx(24),
116
+ backgroundColor: '#fff',
117
+ }}>
118
+ <View style={{ height: cx(20) }} />
119
+ <TextField
120
+ value={state.planData.name}
121
+ showError={state.planData.name?.length > 32 || nameRepeatFlag}
122
+ maxLength={33}
123
+ tipColor={nameRepeatFlag ? '#f00' : undefined}
124
+ errorText={I18n.getLang(nameRepeatFlag ? 'string_light_pp_field_sm_add_error1' : 'add_new_dynamic_mood_alert_text')}
125
+ placeholder={I18n.getLang('add_new_trigger_time_inputfield_value_text')}
126
+ onChangeText={text => {
127
+ state.planData.name = text
128
+ }} />
129
+
130
+ <View style={{ height: cx(20) }} />
131
+ <TimerPicker
132
+ itemTextColor='#aeadb5'
133
+ style={{ paddingVertical: cx(0), marginVertical: cx(0) }}
134
+ is12Hours={!is24Hour}
135
+ singlePicker={true}
136
+ amText={I18n.getLang('manage_user_calendar_label_am')}
137
+ pmText={I18n.getLang('manage_user_calendar_label_pm')}
138
+ startTime={state.planData.time}
139
+ symbol={''}
140
+ onTimerChange={(time) => {
141
+ state.planData.time = time
142
+ }}
143
+ />
144
+ {minimumTipEnable() && <View style={{ flexDirection: 'row', marginVertical: cx(5) }}>
145
+ <Image style={{ width: cx(16), height: cx(16), tintColor: '#000' }} source={res.ic_info} />
146
+ <Text
147
+ style={{ color: '#000', fontSize: cx(12) }}>{I18n.getLang('add_new_trigger_time_information_text')}</Text>
148
+ </View>}
149
+ <View style={{ height: cx(20) }} />
150
+ <View style={{ flexDirection: 'row' }}>
151
+ <View style={{ flex: 1 }}>
152
+ <Text style={{ fontSize: cx(14) }}>{I18n.getLang(isAdd ? 'add_new_trigger_time_text' : 'edit_trigger_time_headline_text')}</Text>
153
+ </View>
154
+ <TouchableOpacity
155
+ activeOpacity={1}
156
+ onPress={() => {
157
+ navigation.navigate(ui_biz_routerKey.bi_biz_biological_icon_select, {
158
+ id: state?.planData.iconId,
159
+ setIcon: (id) => {
160
+ state.planData.iconId = id
161
+ },
162
+ iconIdList: state.iconIdList,
163
+ })
164
+ }}
165
+ >
166
+ <View
167
+ style={{ flex: 1, flexDirection: 'row', justifyContent: 'flex-end', alignContent: 'center', alignItems: 'center' }}>
168
+ <Image
169
+ style={{ width: cx(24), height: cx(24), tintColor: '#000' }}
170
+ source={setImg()}
171
+ />
172
+ <Image style={{ width: cx(16), height: cx(16) }} source={BiologicalRes.biorhythom_select_rightIcon} />
173
+ </View>
174
+ </TouchableOpacity>
175
+ </View>
176
+ <Text
177
+ style={{ fontSize: cx(16), fontFamily: 'helvetica_neue_lt_std_bd', marginTop: cx(33), marginBottom: cx(16) }}>
178
+ {I18n.getLang('add_new_trigger_time_subheadline_text')}
179
+ </Text>
180
+ <Card>
181
+ <View style={styles.titleBGView}>
182
+ <Text
183
+ style={styles.title}>{isMixRGBWLamp ? I18n.getLang('light_sources_tile_main_lighting_headline') : I18n.getLang('light_sources_tile_tw_lighting_headline')}</Text>
184
+ {isSupportTemperature && <View style={[
185
+ styles.colorBlock,
186
+ {
187
+ backgroundColor: cctToColor(state.planData.colorTemperature.toFixed()) ?
188
+ cctToColor(state.planData.colorTemperature.toFixed()) : '#fff', opacity: 1,
189
+ }]}
190
+ />}
191
+ </View>
192
+ <View style={{ paddingBottom: cx(16) }}>
193
+ <ColorTempAdjustView
194
+ colorTemp={state.planData.colorTemperature}
195
+ brightness={Number(state.planData.brightness.toFixed())}
196
+ minBrightness={0}
197
+ onCCTChange={newValue => {
198
+ state.planData.colorTemperature = newValue
199
+ state.planData.action[0].startValue = `${colorTemperatureValue(newValue)}`
200
+ }}
201
+ onCCTChangeComplete={newValue => {
202
+ state.planData.colorTemperature = newValue
203
+ state.planData.action[0].startValue = `${colorTemperatureValue(newValue)}`
204
+ }}
205
+ onBrightnessChange={newValue => {
206
+ state.planData.brightness = newValue
207
+ state.planData.action[1].startValue = `${newValue}`
208
+ }}
209
+ onBrightnessChangeComplete={newValue => {
210
+ state.planData.brightness = newValue
211
+ state.planData.action[1].startValue = `${newValue}`
212
+ }}
213
+ isSupportBrightness={isSupportBrightness}
214
+ isSupportTemperature={isSupportTemperature} />
215
+ </View>
216
+ </Card>
217
+ <Spacer />
218
+ </View>
219
+ {!isAdd && showDeleteBtn &&
220
+ <View
221
+ style={{
222
+ marginHorizontal: cx(24),
223
+ marginVertical: cx(20)
224
+ }}>
225
+ <DeleteButton
226
+ text={I18n.getLang('edit_trigger_time_button_delete_text')}
227
+ onPress={() =>{
228
+ showDialog({
229
+ method: 'confirm',
230
+ title: I18n.getLang('cancel_dialog_delete_item_bio_rhythm_titel'),
231
+ subTitle: I18n.getLang('cancel_dialog_delete_item_wakeupschedule_description'),
232
+ onConfirm: async (_, { close }) => {
233
+ close()
234
+ onDeleteBtnClick()
235
+ },
236
+ })
237
+ }}
238
+ />
239
+ </View>}
240
+ </ScrollView>
241
+ </Page>
242
+ )
243
+ }
244
+
245
+
246
+ const styles = StyleSheet.create({
247
+ titleBGView: {
248
+ flexDirection: 'row',
249
+ alignItems: 'center',
250
+ paddingHorizontal: cx(16),
251
+ },
252
+ colorBlock: {
253
+ width: cx(20),
254
+ height: cx(20),
255
+ marginStart: cx(12),
256
+ borderRadius: cx(4),
257
+ },
258
+ title: {
259
+ color: '#000',
260
+ fontSize: cx(16),
261
+ fontFamily: 'helvetica_neue_lt_std_bd',
262
+ paddingVertical: cx(16),
263
+ },
264
+ })
265
+
266
+
267
+ export default BiorhythmEditPage