Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
AppUms_Lecturer
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
tungnq
AppUms_Lecturer
Commits
1a32e63b
Commit
1a32e63b
authored
Sep 08, 2025
by
tungnq
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
TODO: Đã dựng xong giao diện soạn email
parent
63f6f8af
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
29 additions
and
22 deletions
+29
-22
EmailChipInput.js
src/components/Chip/EmailChipInput.js
+4
-5
chip.js
src/components/Chip/chip.js
+3
-1
TextMulti.js
src/components/Input/TextMulti.js
+6
-2
style.js
src/screens/email/send/style.js
+6
-4
view.js
src/screens/email/send/view.js
+10
-10
No files found.
src/components/Chip/EmailChipInput.js
View file @
1a32e63b
...
@@ -121,14 +121,13 @@ export const EmailChipInput = ({
...
@@ -121,14 +121,13 @@ export const EmailChipInput = ({
chipContainerStyle
=
{
chipContainerStyle
}
chipContainerStyle
=
{
chipContainerStyle
}
chipImage
=
{
chipImage
}
chipImage
=
{
chipImage
}
chipTextStyle
=
{
chipTextStyle
}
chipTextStyle
=
{
chipTextStyle
}
marginHorizontal
=
{
5
}
/
>
/
>
<
Text
<
Text
style
=
{{
style
=
{{
fontSize
:
12
,
fontSize
:
12
,
color
:
R
.
colors
.
gray
,
color
:
R
.
colors
.
gray
,
fontFamily
:
R
.
fonts
.
fontMedium
,
fontFamily
:
R
.
fonts
.
fontMedium
,
marginLeft
:
5
,
alignSelf
:
'center'
,
alignSelf
:
'center'
,
}}
>
}}
>
+
{
emails
.
length
-
1
}
+
{
emails
.
length
-
1
}
...
@@ -205,7 +204,7 @@ export const EmailChipInput = ({
...
@@ -205,7 +204,7 @@ export const EmailChipInput = ({
fontWeight
:
'600'
,
fontWeight
:
'600'
,
padding
:
0
,
padding
:
0
,
height
:
35
,
height
:
35
,
paddingHorizontal
:
10
,
marginHorizontal
:
3
,
textAlignVertical
:
'center'
,
textAlignVertical
:
'center'
,
},
},
inputStyle
,
inputStyle
,
...
@@ -217,7 +216,7 @@ export const EmailChipInput = ({
...
@@ -217,7 +216,7 @@ export const EmailChipInput = ({
<
/Wrapper
>
<
/Wrapper
>
{
emails
.
length
>
1
&&
(
{
emails
.
length
>
1
&&
(
<
View
style
=
{{
position
:
'absolute'
,
right
:
-
3
,
top
:
0
}}
>
<
View
style
=
{{
position
:
'absolute'
,
right
:
-
3
,
top
:
5
}}
>
<
TouchableOpacity
<
TouchableOpacity
onPress
=
{
toggleExpanded
}
onPress
=
{
toggleExpanded
}
style
=
{{
style
=
{{
...
@@ -227,7 +226,7 @@ export const EmailChipInput = ({
...
@@ -227,7 +226,7 @@ export const EmailChipInput = ({
}}
>
}}
>
<
Image
<
Image
source
=
{
isExpanded
?
R
.
images
.
icBack2
:
R
.
images
.
icDrop
}
source
=
{
isExpanded
?
R
.
images
.
icBack2
:
R
.
images
.
icDrop
}
style
=
{{
width
:
2
5
,
height
:
25
,
tintColor
:
R
.
colors
.
black
}}
style
=
{{
width
:
2
0
,
height
:
20
,
tintColor
:
R
.
colors
.
black
}}
/
>
/
>
<
/TouchableOpacity
>
<
/TouchableOpacity
>
<
/View
>
<
/View
>
...
...
src/components/Chip/chip.js
View file @
1a32e63b
...
@@ -19,8 +19,10 @@ const Chip = ({
...
@@ -19,8 +19,10 @@ const Chip = ({
<
View
<
View
onPress
=
{
handlePress
}
onPress
=
{
handlePress
}
style
=
{[{
style
=
{[{
paddingHorizontal
:
10
,
width
:
'auto'
,
paddingHorizontal
:
5
,
paddingVertical
:
5
,
paddingVertical
:
5
,
marginLeft
:
3
,
borderRadius
:
15
,
borderRadius
:
15
,
marginHorizontal
:
marginHorizontal
,
marginHorizontal
:
marginHorizontal
,
marginVertical
:
marginVertical
,
marginVertical
:
marginVertical
,
...
...
src/components/Input/TextMulti.js
View file @
1a32e63b
...
@@ -26,6 +26,9 @@ const TextField = props => {
...
@@ -26,6 +26,9 @@ const TextField = props => {
height
,
height
,
color
=
R
.
colors
.
black
,
color
=
R
.
colors
.
black
,
numberOfLines
=
5
,
numberOfLines
=
5
,
borderBottomWidth
,
paddingVertical
=
10
,
paddingHorizontal
=
10
,
}
=
props
;
}
=
props
;
return
(
return
(
...
@@ -68,11 +71,12 @@ const TextField = props => {
...
@@ -68,11 +71,12 @@ const TextField = props => {
height
:
height
,
height
:
height
,
borderColor
:
R
.
colors
.
grayBorderInputTextHeader
,
borderColor
:
R
.
colors
.
grayBorderInputTextHeader
,
borderWidth
:
1
,
borderWidth
:
1
,
borderBottomWidth
:
borderBottomWidth
,
width
:
'100%'
,
width
:
'100%'
,
borderRadius
:
7
,
borderRadius
:
7
,
fontSize
:
fontSizePlaceHolder
,
fontSize
:
fontSizePlaceHolder
,
paddingVertical
:
10
,
paddingVertical
:
paddingVertical
,
paddingHorizontal
:
10
,
paddingHorizontal
:
paddingHorizontal
,
backgroundColor
:
editable
===
false
backgroundColor
:
editable
===
false
?
(
backgroundColor
||
R
.
colors
.
blue1
)
// khi disabled thì lấy màu xám
?
(
backgroundColor
||
R
.
colors
.
blue1
)
// khi disabled thì lấy màu xám
:
backgroundColor
,
// khi enable thì lấy màu bạn truyền,
:
backgroundColor
,
// khi enable thì lấy màu bạn truyền,
...
...
src/screens/email/send/style.js
View file @
1a32e63b
...
@@ -54,18 +54,20 @@ const styles = StyleSheet.create({
...
@@ -54,18 +54,20 @@ const styles = StyleSheet.create({
height
:
15
height
:
15
},
},
inputContainer
:{
inputContainer
:{
height
:
35
,
flexDirection
:
'row'
,
flexDirection
:
'row'
,
alignItems
:
'center'
,
borderBottomWidth
:
1
,
borderBottomWidth
:
1
,
borderColor
:
R
.
colors
.
blue4
,
borderColor
:
R
.
colors
.
grayBorderInputTextHeader
,
borderRadius
:
5
,
borderRadius
:
5
,
height
:
35
,
alignItems
:
'center'
,
},
},
input
:{
input
:{
flex
:
1
,
padding
:
0
,
padding
:
0
,
paddingHorizontal
:
10
,
paddingHorizontal
:
10
,
paddingVertical
:
0
paddingVertical
:
0
,
}
}
})
})
...
...
src/screens/email/send/view.js
View file @
1a32e63b
...
@@ -5,6 +5,8 @@ import R from '../../../assets/R';
...
@@ -5,6 +5,8 @@ import R from '../../../assets/R';
import
Button
from
'../../../components/Button'
;
import
Button
from
'../../../components/Button'
;
import
{
useNavigation
}
from
'@react-navigation/native'
;
import
{
useNavigation
}
from
'@react-navigation/native'
;
import
EmailChipInput
from
'../../../components/Chip/EmailChipInput'
;
import
EmailChipInput
from
'../../../components/Chip/EmailChipInput'
;
import
TextMulti
from
'../../../components/Input/TextMulti'
;
import
TextField
from
'../../../components/Input/TextField'
;
const
SendEmailView
=
(
props
)
=>
{
const
SendEmailView
=
(
props
)
=>
{
const
{
handleChange
,
chip
,
dataList
}
=
props
;
const
{
handleChange
,
chip
,
dataList
}
=
props
;
...
@@ -100,26 +102,24 @@ const renderHeader = () => {
...
@@ -100,26 +102,24 @@ const renderHeader = () => {
}
}
/
>
/
>
<
View
style
=
{
styles
.
inputContainer
}
>
<
View
style
=
{
styles
.
inputContainer
}
>
<
Text
>
<
Text
style
=
{{
fontSize
:
12
,
color
:
R
.
colors
.
black
,
fontFamily
:
R
.
fonts
.
fontMedium
}}
>
Subject
Subject
<
/Text
>
<
/Text
>
<
TextInput
<
TextInput
placeholder
=
"Subject"
placeholderTextColor
=
{
R
.
colors
.
gray
}
style
=
{
styles
.
input
}
style
=
{
styles
.
input
}
/
>
/
>
<
/View
>
<
/View
>
<
View
style
=
{[
{
height
:
100
}]}
>
<
View
style
=
{
styles
.
inputContainer
}
>
<
Text
>
Content
<
/Text
>
<
TextInput
<
TextInput
placeholder
=
"Content"
placeholderTextColor
=
{
R
.
colors
.
gray
}
style
=
{
styles
.
input
}
style
=
{[
styles
.
input
,
{
paddingHorizontal
:
10
}]}
multiline
=
{
true
}
numberOfLines
=
{
5
}
textAlignVertical
=
'top'
/>
/>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
<
/View
>
);
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment