commit
c2ecdd5151
|
@ -50,7 +50,6 @@ exports[`render channel 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={false}
|
allowFontScaling={false}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -85,7 +84,6 @@ exports[`render channel 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -103,7 +101,6 @@ exports[`render channel 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -163,7 +160,6 @@ exports[`render no icon 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -181,7 +177,6 @@ exports[`render no icon 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -241,7 +236,6 @@ exports[`render private group 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -259,7 +253,6 @@ exports[`render private group 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -328,7 +321,6 @@ exports[`render unread +999 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -356,7 +348,6 @@ exports[`render unread +999 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -374,7 +365,6 @@ exports[`render unread +999 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -392,7 +382,6 @@ exports[`render unread +999 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -464,7 +453,6 @@ exports[`render unread 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -492,7 +480,6 @@ exports[`render unread 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -510,7 +497,6 @@ exports[`render unread 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -528,7 +514,6 @@ exports[`render unread 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -600,7 +585,6 @@ exports[`renders correctly 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -628,7 +612,6 @@ exports[`renders correctly 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -646,7 +629,6 @@ exports[`renders correctly 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
|
|
@ -24,7 +24,6 @@ exports[`Storyshots Avatar avatar 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -61,7 +60,6 @@ exports[`Storyshots Avatar avatar 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -98,7 +96,6 @@ exports[`Storyshots Avatar avatar 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -135,7 +132,6 @@ exports[`Storyshots Avatar avatar 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -208,7 +204,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -255,7 +250,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -273,7 +267,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -339,7 +332,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -386,7 +378,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -404,7 +395,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -470,7 +460,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -517,7 +506,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -535,7 +523,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -553,7 +540,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -622,7 +608,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -669,7 +654,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -687,7 +671,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -705,7 +688,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -774,7 +756,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -821,7 +802,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -839,7 +819,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -857,7 +836,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -926,7 +904,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -973,7 +950,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -991,7 +967,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1009,7 +984,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -1078,7 +1052,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -1125,7 +1098,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1143,7 +1115,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1161,7 +1132,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Object {
|
Object {
|
||||||
|
@ -1230,7 +1200,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -1258,7 +1227,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1276,7 +1244,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1342,7 +1309,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -1370,7 +1336,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1388,7 +1353,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1454,7 +1418,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
style={
|
style={
|
||||||
Array [
|
Array [
|
||||||
|
@ -1482,7 +1445,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
@ -1500,7 +1462,6 @@ exports[`Storyshots Channel Cell Direct Messages 1`] = `
|
||||||
<Text
|
<Text
|
||||||
accessible={true}
|
accessible={true}
|
||||||
allowFontScaling={true}
|
allowFontScaling={true}
|
||||||
disabled={false}
|
|
||||||
ellipsizeMode="tail"
|
ellipsizeMode="tail"
|
||||||
numberOfLines={1}
|
numberOfLines={1}
|
||||||
style={
|
style={
|
||||||
|
|
|
@ -20,7 +20,9 @@ const styles = StyleSheet.create({
|
||||||
|
|
||||||
class Avatar extends React.PureComponent {
|
class Avatar extends React.PureComponent {
|
||||||
render() {
|
render() {
|
||||||
const { text = '', size = 25, baseUrl, borderRadius = 5, style, avatar } = this.props;
|
const {
|
||||||
|
text = '', size = 25, baseUrl, borderRadius = 5, style, avatar
|
||||||
|
} = this.props;
|
||||||
const { initials, color } = avatarInitialsAndColor(`${ text }`);
|
const { initials, color } = avatarInitialsAndColor(`${ text }`);
|
||||||
|
|
||||||
const iconContainerStyle = {
|
const iconContainerStyle = {
|
||||||
|
|
|
@ -31,9 +31,9 @@ export default class Banner extends React.PureComponent {
|
||||||
offline: PropTypes.bool
|
offline: PropTypes.bool
|
||||||
}
|
}
|
||||||
componentWillMount() {
|
componentWillMount() {
|
||||||
this.state = {
|
this.setState({
|
||||||
slow: false
|
slow: false
|
||||||
};
|
});
|
||||||
this.timer = setTimeout(() => this.setState({ slow: true }), 5000);
|
this.timer = setTimeout(() => this.setState({ slow: true }), 5000);
|
||||||
}
|
}
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { View, TextInput, StyleSheet } from 'react-native';
|
import { View, TextInput, StyleSheet, SafeAreaView } from 'react-native';
|
||||||
import Icon from 'react-native-vector-icons/MaterialIcons';
|
import Icon from 'react-native-vector-icons/MaterialIcons';
|
||||||
import ImagePicker from 'react-native-image-picker';
|
import ImagePicker from 'react-native-image-picker';
|
||||||
import RocketChat from '../lib/rocketchat';
|
import RocketChat from '../lib/rocketchat';
|
||||||
|
@ -10,7 +10,9 @@ const styles = StyleSheet.create({
|
||||||
paddingTop: 1,
|
paddingTop: 1,
|
||||||
borderTopWidth: 1,
|
borderTopWidth: 1,
|
||||||
borderTopColor: '#ccc',
|
borderTopColor: '#ccc',
|
||||||
backgroundColor: '#fff',
|
backgroundColor: '#fff'
|
||||||
|
},
|
||||||
|
safeAreaView: {
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
alignItems: 'center'
|
alignItems: 'center'
|
||||||
},
|
},
|
||||||
|
@ -77,17 +79,19 @@ export default class MessageBox extends React.PureComponent {
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<View style={styles.textBox}>
|
<View style={styles.textBox}>
|
||||||
<Icon style={styles.fileButton} name='add-circle-outline' onPress={this.addFile} />
|
<SafeAreaView style={styles.safeAreaView}>
|
||||||
<TextInput
|
<Icon style={styles.fileButton} name='add-circle-outline' onPress={this.addFile} />
|
||||||
ref={component => this.component = component}
|
<TextInput
|
||||||
style={styles.textBoxInput}
|
ref={component => this.component = component}
|
||||||
returnKeyType='send'
|
style={styles.textBoxInput}
|
||||||
onSubmitEditing={event => this.submit(event.nativeEvent.text)}
|
returnKeyType='send'
|
||||||
blurOnSubmit={false}
|
onSubmitEditing={event => this.submit(event.nativeEvent.text)}
|
||||||
placeholder='New message'
|
blurOnSubmit={false}
|
||||||
underlineColorAndroid='transparent'
|
placeholder='New message'
|
||||||
defaultValue={''}
|
underlineColorAndroid='transparent'
|
||||||
/>
|
defaultValue=''
|
||||||
|
/>
|
||||||
|
</SafeAreaView>
|
||||||
</View>
|
</View>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,7 +55,7 @@ export default class Sidebar extends Component {
|
||||||
|
|
||||||
componentWillMount() {
|
componentWillMount() {
|
||||||
realm.addListener('change', this.updateState);
|
realm.addListener('change', this.updateState);
|
||||||
this.state = this.getState();
|
this.setState(this.getState());
|
||||||
}
|
}
|
||||||
|
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
|
|
|
@ -34,7 +34,9 @@ export default class extends React.PureComponent {
|
||||||
onClose: PropTypes.func.isRequired
|
onClose: PropTypes.func.isRequired
|
||||||
}
|
}
|
||||||
render() {
|
render() {
|
||||||
const { image, isVisible, onClose, title } = this.props;
|
const {
|
||||||
|
image, isVisible, onClose, title
|
||||||
|
} = this.props;
|
||||||
return (
|
return (
|
||||||
<Modal
|
<Modal
|
||||||
isVisible={isVisible}
|
isVisible={isVisible}
|
||||||
|
@ -50,7 +52,7 @@ export default class extends React.PureComponent {
|
||||||
style={styles.image}
|
style={styles.image}
|
||||||
source={{ uri: encodeURI(image) }}
|
source={{ uri: encodeURI(image) }}
|
||||||
mutable
|
mutable
|
||||||
resizeMode={'contain'}
|
resizeMode='contain'
|
||||||
/>
|
/>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
</View>
|
</View>
|
||||||
|
|
|
@ -38,7 +38,7 @@ const AuthRoutes = StackNavigator(
|
||||||
title: navigation.state.params.title || 'Room',
|
title: navigation.state.params.title || 'Room',
|
||||||
headerLeft: (
|
headerLeft: (
|
||||||
<HeaderBackButton
|
<HeaderBackButton
|
||||||
title={'Back'}
|
title='Back'
|
||||||
onPress={() => backToScreen(navigation, 'RoomsList')}
|
onPress={() => backToScreen(navigation, 'RoomsList')}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
|
|
|
@ -18,9 +18,7 @@ if (__DEV__) {
|
||||||
applyMiddleware(logger)
|
applyMiddleware(logger)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
enhacers = composeWithDevTools(
|
enhacers = composeWithDevTools(applyMiddleware(sagaMiddleware));
|
||||||
applyMiddleware(sagaMiddleware)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const store = enhacers(createStore)(reducers);
|
const store = enhacers(createStore)(reducers);
|
||||||
|
|
|
@ -45,14 +45,16 @@ export default class Loading extends Component {
|
||||||
toValue: 0.8,
|
toValue: 0.8,
|
||||||
duration: 1000,
|
duration: 1000,
|
||||||
useNativeDriver: true
|
useNativeDriver: true
|
||||||
}),
|
}
|
||||||
|
),
|
||||||
Animated.timing(
|
Animated.timing(
|
||||||
this.scale,
|
this.scale,
|
||||||
{
|
{
|
||||||
toValue: 1,
|
toValue: 1,
|
||||||
duration: 1000,
|
duration: 1000,
|
||||||
useNativeDriver: true
|
useNativeDriver: true
|
||||||
})
|
}
|
||||||
|
)
|
||||||
]).start(() => {
|
]).start(() => {
|
||||||
this.animate();
|
this.animate();
|
||||||
});
|
});
|
||||||
|
|
|
@ -76,7 +76,7 @@ export default class RoomItem extends React.PureComponent {
|
||||||
unread: PropTypes.number,
|
unread: PropTypes.number,
|
||||||
baseUrl: PropTypes.string,
|
baseUrl: PropTypes.string,
|
||||||
onPress: PropTypes.func,
|
onPress: PropTypes.func,
|
||||||
dateFormat: PropTypes.string.isRequired
|
dateFormat: PropTypes.string
|
||||||
}
|
}
|
||||||
|
|
||||||
get icon() {
|
get icon() {
|
||||||
|
@ -126,12 +126,24 @@ export default class RoomItem extends React.PureComponent {
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
const { unread, name, _updatedAt } = this.props;
|
const { unread, name, _updatedAt } = this.props;
|
||||||
|
if (_updatedAt) {
|
||||||
|
return (
|
||||||
|
<TouchableOpacity onPress={this.props.onPress} style={styles.container}>
|
||||||
|
{this.icon}
|
||||||
|
<View style={styles.roomNameView}>
|
||||||
|
<Text style={styles.roomName} ellipsizeMode='tail' numberOfLines={1}>{ name }</Text>
|
||||||
|
<Text style={styles.update} ellipsizeMode='tail' numberOfLines={1}>{ moment(_updatedAt).format(this.props.dateFormat) }</Text>
|
||||||
|
</View>
|
||||||
|
{this.renderNumber(unread)}
|
||||||
|
</TouchableOpacity>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<TouchableOpacity onPress={this.props.onPress} style={styles.container}>
|
<TouchableOpacity onPress={this.props.onPress} style={styles.container}>
|
||||||
{this.icon}
|
{this.icon}
|
||||||
<View style={styles.roomNameView}>
|
<View style={styles.roomNameView}>
|
||||||
<Text style={styles.roomName} ellipsizeMode='tail' numberOfLines={1}>{ name }</Text>
|
<Text style={styles.roomName} ellipsizeMode='tail' numberOfLines={1}>{ name }</Text>
|
||||||
<Text style={styles.update} ellipsizeMode='tail' numberOfLines={1}>{ moment(_updatedAt).format(this.props.dateFormat) }</Text>
|
|
||||||
</View>
|
</View>
|
||||||
{this.renderNumber(unread)}
|
{this.renderNumber(unread)}
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
|
@ -10,17 +10,20 @@ const initialState = {
|
||||||
export default function connect(state = initialState, action) {
|
export default function connect(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case METEOR.REQUEST:
|
case METEOR.REQUEST:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: true
|
connecting: true
|
||||||
};
|
};
|
||||||
case METEOR.SUCCESS:
|
case METEOR.SUCCESS:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: false,
|
connecting: false,
|
||||||
connected: true,
|
connected: true,
|
||||||
failure: false
|
failure: false
|
||||||
};
|
};
|
||||||
case METEOR.FAILURE:
|
case METEOR.FAILURE:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: false,
|
connecting: false,
|
||||||
connected: false,
|
connected: false,
|
||||||
failure: true,
|
failure: true,
|
||||||
|
|
|
@ -12,14 +12,16 @@ const initialState = {
|
||||||
export default function login(state = initialState, action) {
|
export default function login(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case types.LOGIN.REQUEST:
|
case types.LOGIN.REQUEST:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: true,
|
isFetching: true,
|
||||||
isAuthenticated: false,
|
isAuthenticated: false,
|
||||||
failure: false,
|
failure: false,
|
||||||
error: ''
|
error: ''
|
||||||
};
|
};
|
||||||
case types.LOGIN.SUCCESS:
|
case types.LOGIN.SUCCESS:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false,
|
isFetching: false,
|
||||||
isAuthenticated: true,
|
isAuthenticated: true,
|
||||||
user: action.user,
|
user: action.user,
|
||||||
|
@ -28,7 +30,8 @@ export default function login(state = initialState, action) {
|
||||||
error: ''
|
error: ''
|
||||||
};
|
};
|
||||||
case types.LOGIN.FAILURE:
|
case types.LOGIN.FAILURE:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false,
|
isFetching: false,
|
||||||
isAuthenticated: false,
|
isAuthenticated: false,
|
||||||
failure: true,
|
failure: true,
|
||||||
|
@ -37,7 +40,8 @@ export default function login(state = initialState, action) {
|
||||||
case types.LOGOUT:
|
case types.LOGOUT:
|
||||||
return initialState;
|
return initialState;
|
||||||
case types.LOGIN.SET_TOKEN:
|
case types.LOGIN.SET_TOKEN:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
token: action.token,
|
token: action.token,
|
||||||
user: action.user
|
user: action.user
|
||||||
};
|
};
|
||||||
|
|
|
@ -8,15 +8,18 @@ const initialState = {
|
||||||
export default function messages(state = initialState, action) {
|
export default function messages(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case types.MESSAGES.REQUEST:
|
case types.MESSAGES.REQUEST:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: true
|
isFetching: true
|
||||||
};
|
};
|
||||||
case types.MESSAGES.SUCCESS:
|
case types.MESSAGES.SUCCESS:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false
|
isFetching: false
|
||||||
};
|
};
|
||||||
case types.LOGIN.FAILURE:
|
case types.LOGIN.FAILURE:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false,
|
isFetching: false,
|
||||||
failure: true,
|
failure: true,
|
||||||
errorMessage: action.err
|
errorMessage: action.err
|
||||||
|
|
|
@ -5,8 +5,7 @@ const initialState = {};
|
||||||
export default function navigations(state = initialState, action) {
|
export default function navigations(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case types.NAVIGATION.SET:
|
case types.NAVIGATION.SET:
|
||||||
return action.navigator
|
return action.navigator;
|
||||||
;
|
|
||||||
default:
|
default:
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,8 @@ import initialState from './initialState';
|
||||||
|
|
||||||
export default function settings(state = initialState.settings, action) {
|
export default function settings(state = initialState.settings, action) {
|
||||||
if (action.type === types.SET_ALL_SETTINGS) {
|
if (action.type === types.SET_ALL_SETTINGS) {
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
...action.payload
|
...action.payload
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,15 +8,18 @@ const initialState = {
|
||||||
export default function login(state = initialState, action) {
|
export default function login(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case types.ROOMS.REQUEST:
|
case types.ROOMS.REQUEST:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: true
|
isFetching: true
|
||||||
};
|
};
|
||||||
case types.ROOMS.SUCCESS:
|
case types.ROOMS.SUCCESS:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false
|
isFetching: false
|
||||||
};
|
};
|
||||||
case types.ROOMS.FAILURE:
|
case types.ROOMS.FAILURE:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
isFetching: false,
|
isFetching: false,
|
||||||
failure: true,
|
failure: true,
|
||||||
errorMessage: action.err
|
errorMessage: action.err
|
||||||
|
|
|
@ -12,18 +12,21 @@ const initialState = {
|
||||||
export default function server(state = initialState, action) {
|
export default function server(state = initialState, action) {
|
||||||
switch (action.type) {
|
switch (action.type) {
|
||||||
case SERVER.REQUEST:
|
case SERVER.REQUEST:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: true,
|
connecting: true,
|
||||||
failure: false
|
failure: false
|
||||||
};
|
};
|
||||||
case SERVER.SUCCESS:
|
case SERVER.SUCCESS:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: false,
|
connecting: false,
|
||||||
connected: true,
|
connected: true,
|
||||||
failure: false
|
failure: false
|
||||||
};
|
};
|
||||||
case SERVER.FAILURE:
|
case SERVER.FAILURE:
|
||||||
return { ...state,
|
return {
|
||||||
|
...state,
|
||||||
connecting: false,
|
connecting: false,
|
||||||
connected: false,
|
connected: false,
|
||||||
failure: true,
|
failure: true,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { TextInput, View, Text, Switch, TouchableOpacity } from 'react-native';
|
import { TextInput, View, Text, Switch, TouchableOpacity, SafeAreaView } from 'react-native';
|
||||||
import { createChannelRequest } from '../actions/createChannel';
|
import { createChannelRequest } from '../actions/createChannel';
|
||||||
import styles from './Styles';
|
import styles from './Styles';
|
||||||
import KeyboardView from '../presentation/KeyboardView';
|
import KeyboardView from '../presentation/KeyboardView';
|
||||||
|
@ -94,7 +94,7 @@ export default class CreateChannelView extends React.Component {
|
||||||
style={[styles.defaultViewBackground, { flex: 1 }]}
|
style={[styles.defaultViewBackground, { flex: 1 }]}
|
||||||
contentContainerStyle={styles.defaultView}
|
contentContainerStyle={styles.defaultView}
|
||||||
>
|
>
|
||||||
<View style={styles.formContainer}>
|
<SafeAreaView style={styles.formContainer}>
|
||||||
<Text style={styles.label_white}>Channel Name</Text>
|
<Text style={styles.label_white}>Channel Name</Text>
|
||||||
<TextInput
|
<TextInput
|
||||||
value={this.state.channelName}
|
value={this.state.channelName}
|
||||||
|
@ -139,7 +139,7 @@ export default class CreateChannelView extends React.Component {
|
||||||
{this.props.result.isFetching ? 'LOADING' : 'CREATE'}!
|
{this.props.result.isFetching ? 'LOADING' : 'CREATE'}!
|
||||||
</Text>
|
</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
</View>
|
</SafeAreaView>
|
||||||
</KeyboardView>
|
</KeyboardView>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import Spinner from 'react-native-loading-spinner-overlay';
|
import Spinner from 'react-native-loading-spinner-overlay';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { Text, TextInput, View, TouchableOpacity, Alert } from 'react-native';
|
import { Text, TextInput, View, TouchableOpacity, Alert, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { bindActionCreators } from 'redux';
|
import { bindActionCreators } from 'redux';
|
||||||
import * as loginActions from '../actions/login';
|
import * as loginActions from '../actions/login';
|
||||||
|
@ -72,32 +72,34 @@ class ForgotPasswordView extends React.Component {
|
||||||
contentContainerStyle={styles.container}
|
contentContainerStyle={styles.container}
|
||||||
keyboardVerticalOffset={128}
|
keyboardVerticalOffset={128}
|
||||||
>
|
>
|
||||||
<View style={styles.loginView}>
|
<SafeAreaView>
|
||||||
<View style={styles.formContainer}>
|
<View style={styles.loginView}>
|
||||||
<TextInput
|
<View style={styles.formContainer}>
|
||||||
style={[styles.input_white, this.state.invalidEmail ? { borderColor: 'red' } : {}]}
|
<TextInput
|
||||||
onChangeText={email => this.validate(email)}
|
style={[styles.input_white, this.state.invalidEmail ? { borderColor: 'red' } : {}]}
|
||||||
keyboardType='email-address'
|
onChangeText={email => this.validate(email)}
|
||||||
autoCorrect={false}
|
keyboardType='email-address'
|
||||||
returnKeyType='next'
|
autoCorrect={false}
|
||||||
autoCapitalize='none'
|
returnKeyType='next'
|
||||||
underlineColorAndroid='transparent'
|
autoCapitalize='none'
|
||||||
onSubmitEditing={() => this.resetPassword()}
|
underlineColorAndroid='transparent'
|
||||||
placeholder='Email'
|
onSubmitEditing={() => this.resetPassword()}
|
||||||
/>
|
placeholder='Email'
|
||||||
|
/>
|
||||||
|
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.resetPassword}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.resetPassword}>
|
||||||
<Text style={styles.button}>RESET PASSWORD</Text>
|
<Text style={styles.button}>RESET PASSWORD</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.backLogin}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.backLogin}>
|
||||||
<Text style={styles.button}>BACK TO LOGIN</Text>
|
<Text style={styles.button}>BACK TO LOGIN</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
||||||
|
</View>
|
||||||
|
<Spinner visible={this.props.login.isFetching} textContent='Loading...' textStyle={{ color: '#FFF' }} />
|
||||||
</View>
|
</View>
|
||||||
<Spinner visible={this.props.login.isFetching} textContent={'Loading...'} textStyle={{ color: '#FFF' }} />
|
</SafeAreaView>
|
||||||
</View>
|
|
||||||
</KeyboardView>
|
</KeyboardView>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@ import React from 'react';
|
||||||
import Icon from 'react-native-vector-icons/Ionicons';
|
import Icon from 'react-native-vector-icons/Ionicons';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import Zeroconf from 'react-native-zeroconf';
|
import Zeroconf from 'react-native-zeroconf';
|
||||||
import { View, Text, SectionList, StyleSheet } from 'react-native';
|
import { View, Text, SectionList, StyleSheet, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { setServer } from '../actions/server';
|
import { setServer } from '../actions/server';
|
||||||
import realm from '../lib/realm';
|
import realm from '../lib/realm';
|
||||||
|
@ -93,7 +93,7 @@ export default class ListServerView extends React.Component {
|
||||||
|
|
||||||
zeroconf.scan('http', 'tcp', 'local.');
|
zeroconf.scan('http', 'tcp', 'local.');
|
||||||
|
|
||||||
this.state = this.getState();
|
this.setState(this.getState());
|
||||||
}
|
}
|
||||||
|
|
||||||
componentDidUpdate() {
|
componentDidUpdate() {
|
||||||
|
@ -184,14 +184,16 @@ export default class ListServerView extends React.Component {
|
||||||
return (
|
return (
|
||||||
<View style={styles.view}>
|
<View style={styles.view}>
|
||||||
<Banner />
|
<Banner />
|
||||||
<SectionList
|
<SafeAreaView style={styles.view}>
|
||||||
style={styles.list}
|
<SectionList
|
||||||
sections={this.state.sections}
|
style={styles.list}
|
||||||
renderItem={this.renderItem}
|
sections={this.state.sections}
|
||||||
renderSectionHeader={this.renderSectionHeader}
|
renderItem={this.renderItem}
|
||||||
keyExtractor={item => item.id}
|
renderSectionHeader={this.renderSectionHeader}
|
||||||
ItemSeparatorComponent={this.renderSeparator}
|
keyExtractor={item => item.id}
|
||||||
/>
|
ItemSeparatorComponent={this.renderSeparator}
|
||||||
|
/>
|
||||||
|
</SafeAreaView>
|
||||||
</View>
|
</View>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
import Spinner from 'react-native-loading-spinner-overlay';
|
// import Spinner from 'react-native-loading-spinner-overlay';
|
||||||
|
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { Keyboard, Text, TextInput, View, TouchableOpacity } from 'react-native';
|
import { Keyboard, Text, TextInput, View, TouchableOpacity, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { bindActionCreators } from 'redux';
|
import { bindActionCreators } from 'redux';
|
||||||
// import * as actions from '../actions';
|
// import * as actions from '../actions';
|
||||||
|
@ -87,58 +87,59 @@ class LoginView extends React.Component {
|
||||||
keyboardVerticalOffset={128}
|
keyboardVerticalOffset={128}
|
||||||
>
|
>
|
||||||
<View style={styles.loginView}>
|
<View style={styles.loginView}>
|
||||||
<View style={styles.formContainer}>
|
<SafeAreaView>
|
||||||
<TextInput
|
<View style={styles.formContainer}>
|
||||||
style={styles.input_white}
|
<TextInput
|
||||||
onChangeText={username => this.setState({ username })}
|
style={styles.input_white}
|
||||||
keyboardType='email-address'
|
onChangeText={username => this.setState({ username })}
|
||||||
autoCorrect={false}
|
keyboardType='email-address'
|
||||||
returnKeyType='next'
|
autoCorrect={false}
|
||||||
autoCapitalize='none'
|
returnKeyType='next'
|
||||||
underlineColorAndroid='transparent'
|
autoCapitalize='none'
|
||||||
onSubmitEditing={() => { this.password.focus(); }}
|
underlineColorAndroid='transparent'
|
||||||
placeholder={this.props.Accounts_EmailOrUsernamePlaceholder || 'Email or username'}
|
onSubmitEditing={() => { this.password.focus(); }}
|
||||||
/>
|
placeholder={this.props.Accounts_EmailOrUsernamePlaceholder || 'Email or username'}
|
||||||
<TextInput
|
/>
|
||||||
ref={(e) => { this.password = e; }}
|
<TextInput
|
||||||
style={styles.input_white}
|
ref={(e) => { this.password = e; }}
|
||||||
onChangeText={password => this.setState({ password })}
|
style={styles.input_white}
|
||||||
secureTextEntry
|
onChangeText={password => this.setState({ password })}
|
||||||
autoCorrect={false}
|
secureTextEntry
|
||||||
returnKeyType='done'
|
autoCorrect={false}
|
||||||
autoCapitalize='none'
|
returnKeyType='done'
|
||||||
underlineColorAndroid='transparent'
|
autoCapitalize='none'
|
||||||
onSubmitEditing={this.submit}
|
underlineColorAndroid='transparent'
|
||||||
placeholder={this.props.Accounts_PasswordPlaceholder || 'Password'}
|
onSubmitEditing={this.submit}
|
||||||
/>
|
placeholder={this.props.Accounts_PasswordPlaceholder || 'Password'}
|
||||||
|
/>
|
||||||
|
|
||||||
{this.renderTOTP()}
|
{this.renderTOTP()}
|
||||||
|
|
||||||
<TouchableOpacity
|
<TouchableOpacity
|
||||||
style={styles.buttonContainer}
|
style={styles.buttonContainer}
|
||||||
onPress={this.submit}
|
onPress={this.submit}
|
||||||
>
|
>
|
||||||
<Text style={styles.button}>LOGIN</Text>
|
<Text style={styles.button}>LOGIN</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.register}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.register}>
|
||||||
<Text style={styles.button}>REGISTER</Text>
|
<Text style={styles.button}>REGISTER</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.termsService}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.termsService}>
|
||||||
<Text style={styles.button}>TERMS OF SERVICE</Text>
|
<Text style={styles.button}>TERMS OF SERVICE</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.privacyPolicy}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.privacyPolicy}>
|
||||||
<Text style={styles.button}>PRIVACY POLICY</Text>
|
<Text style={styles.button}>PRIVACY POLICY</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
<TouchableOpacity style={styles.buttonContainer} onPress={this.forgotPassword}>
|
<TouchableOpacity style={styles.buttonContainer} onPress={this.forgotPassword}>
|
||||||
<Text style={styles.button}>FORGOT MY PASSWORD</Text>
|
<Text style={styles.button}>FORGOT MY PASSWORD</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
||||||
</View>
|
</View>
|
||||||
<Spinner visible={this.props.login.isFetching} textContent={'Loading...'} textStyle={{ color: '#FFF' }} />
|
</SafeAreaView>
|
||||||
</View>
|
</View>
|
||||||
</KeyboardView>
|
</KeyboardView>
|
||||||
);
|
);
|
||||||
|
|
|
@ -27,7 +27,7 @@ export default class extends React.PureComponent {
|
||||||
style={{ ...styles.image }}
|
style={{ ...styles.image }}
|
||||||
source={{ uri: encodeURI(image) }}
|
source={{ uri: encodeURI(image) }}
|
||||||
mutable
|
mutable
|
||||||
resizeMode={'contain'}
|
resizeMode='contain'
|
||||||
/>
|
/>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
</View>
|
</View>
|
||||||
|
|
|
@ -3,7 +3,7 @@ import React from 'react';
|
||||||
import Spinner from 'react-native-loading-spinner-overlay';
|
import Spinner from 'react-native-loading-spinner-overlay';
|
||||||
|
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { Keyboard, Text, TextInput, View, TouchableOpacity } from 'react-native';
|
import { Keyboard, Text, TextInput, View, TouchableOpacity, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { bindActionCreators } from 'redux';
|
import { bindActionCreators } from 'redux';
|
||||||
import * as loginActions from '../actions/login';
|
import * as loginActions from '../actions/login';
|
||||||
|
@ -37,7 +37,9 @@ class RegisterView extends React.Component {
|
||||||
}
|
}
|
||||||
|
|
||||||
_valid() {
|
_valid() {
|
||||||
const { name, email, password, confirmPassword } = this.state;
|
const {
|
||||||
|
name, email, password, confirmPassword
|
||||||
|
} = this.state;
|
||||||
return name.trim() && email.trim() &&
|
return name.trim() && email.trim() &&
|
||||||
password && confirmPassword && password === confirmPassword;
|
password && confirmPassword && password === confirmPassword;
|
||||||
}
|
}
|
||||||
|
@ -45,12 +47,16 @@ class RegisterView extends React.Component {
|
||||||
return this.props.login.failure && /Email/.test(this.props.login.error.reason);
|
return this.props.login.failure && /Email/.test(this.props.login.error.reason);
|
||||||
}
|
}
|
||||||
submit = () => {
|
submit = () => {
|
||||||
const { name, email, password, code } = this.state;
|
const {
|
||||||
|
name, email, password, code
|
||||||
|
} = this.state;
|
||||||
if (!this._valid()) {
|
if (!this._valid()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.props.registerSubmit({ name, email, pass: password, code });
|
this.props.registerSubmit({
|
||||||
|
name, email, pass: password, code
|
||||||
|
});
|
||||||
Keyboard.dismiss();
|
Keyboard.dismiss();
|
||||||
}
|
}
|
||||||
usernameSubmit = () => {
|
usernameSubmit = () => {
|
||||||
|
@ -127,7 +133,8 @@ class RegisterView extends React.Component {
|
||||||
style={[styles.button, this._valid() ? {}
|
style={[styles.button, this._valid() ? {}
|
||||||
: { color: placeholderTextColor }
|
: { color: placeholderTextColor }
|
||||||
]}
|
]}
|
||||||
>REGISTER</Text>
|
>REGISTER
|
||||||
|
</Text>
|
||||||
</TouchableOpacity>
|
</TouchableOpacity>
|
||||||
|
|
||||||
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
{this.props.login.failure && <Text style={styles.error}>{this.props.login.error.reason}</Text>}
|
||||||
|
@ -168,11 +175,13 @@ class RegisterView extends React.Component {
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<KeyboardView contentContainerStyle={styles.container}>
|
<KeyboardView contentContainerStyle={styles.container}>
|
||||||
<View style={styles.loginView}>
|
<SafeAreaView>
|
||||||
{this._renderRegister()}
|
<View style={styles.loginView}>
|
||||||
{this._renderUsername()}
|
{this._renderRegister()}
|
||||||
<Spinner visible={this.props.login.isFetching} textContent={'Loading...'} textStyle={{ color: '#FFF' }} />
|
{this._renderUsername()}
|
||||||
</View>
|
<Spinner visible={this.props.login.isFetching} textContent='Loading...' textStyle={{ color: '#FFF' }} />
|
||||||
|
</View>
|
||||||
|
</SafeAreaView>
|
||||||
</KeyboardView>
|
</KeyboardView>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import { Text, View, StyleSheet, Button, InteractionManager } from 'react-native';
|
import { Text, View, StyleSheet, Button, InteractionManager, SafeAreaView } from 'react-native';
|
||||||
import { ListView } from 'realm/react-native';
|
import { ListView } from 'realm/react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import { bindActionCreators } from 'redux';
|
import { bindActionCreators } from 'redux';
|
||||||
|
@ -19,6 +19,9 @@ const styles = StyleSheet.create({
|
||||||
flex: 1,
|
flex: 1,
|
||||||
backgroundColor: '#fff'
|
backgroundColor: '#fff'
|
||||||
},
|
},
|
||||||
|
safeAreaView: {
|
||||||
|
flex: 1
|
||||||
|
},
|
||||||
list: {
|
list: {
|
||||||
flex: 1,
|
flex: 1,
|
||||||
transform: [{ scaleY: -1 }]
|
transform: [{ scaleY: -1 }]
|
||||||
|
@ -195,16 +198,18 @@ export default class RoomView extends React.Component {
|
||||||
return (
|
return (
|
||||||
<KeyboardView contentContainerStyle={styles.container} keyboardVerticalOffset={64}>
|
<KeyboardView contentContainerStyle={styles.container} keyboardVerticalOffset={64}>
|
||||||
{this.renderBanner()}
|
{this.renderBanner()}
|
||||||
<ListView
|
<SafeAreaView style={styles.safeAreaView}>
|
||||||
enableEmptySections
|
<ListView
|
||||||
style={styles.list}
|
enableEmptySections
|
||||||
onEndReachedThreshold={10}
|
style={styles.list}
|
||||||
renderFooter={this.renderHeader}
|
onEndReachedThreshold={10}
|
||||||
onEndReached={this.onEndReached}
|
renderFooter={this.renderHeader}
|
||||||
dataSource={this.state.dataSource}
|
onEndReached={this.onEndReached}
|
||||||
renderRow={item => this.renderItem({ item })}
|
dataSource={this.state.dataSource}
|
||||||
initialListSize={10}
|
renderRow={item => this.renderItem({ item })}
|
||||||
/>
|
initialListSize={10}
|
||||||
|
/>
|
||||||
|
</SafeAreaView>
|
||||||
{this.renderFooter()}
|
{this.renderFooter()}
|
||||||
</KeyboardView>
|
</KeyboardView>
|
||||||
);
|
);
|
||||||
|
|
|
@ -3,7 +3,7 @@ import { ListView } from 'realm/react-native';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import Icon from 'react-native-vector-icons/Ionicons';
|
import Icon from 'react-native-vector-icons/Ionicons';
|
||||||
import { View, StyleSheet, TextInput } from 'react-native';
|
import { View, StyleSheet, TextInput, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import * as actions from '../actions';
|
import * as actions from '../actions';
|
||||||
import * as server from '../actions/connect';
|
import * as server from '../actions/connect';
|
||||||
|
@ -51,6 +51,10 @@ const styles = StyleSheet.create({
|
||||||
padding: 5,
|
padding: 5,
|
||||||
paddingLeft: 10,
|
paddingLeft: 10,
|
||||||
color: '#aaa'
|
color: '#aaa'
|
||||||
|
},
|
||||||
|
safeAreaView: {
|
||||||
|
flex: 1,
|
||||||
|
backgroundColor: '#fff'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -90,10 +94,10 @@ export default class RoomsListView extends React.Component {
|
||||||
componentWillMount() {
|
componentWillMount() {
|
||||||
this.data.addListener(this.updateState);
|
this.data.addListener(this.updateState);
|
||||||
|
|
||||||
this.state = {
|
this.setState({
|
||||||
...this.state,
|
...this.state,
|
||||||
dataSource: ds.cloneWithRows(this.data)
|
dataSource: ds.cloneWithRows(this.data)
|
||||||
};
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
componentWillReceiveProps(props) {
|
componentWillReceiveProps(props) {
|
||||||
|
@ -243,7 +247,7 @@ export default class RoomsListView extends React.Component {
|
||||||
key={item._id}
|
key={item._id}
|
||||||
type={item.t}
|
type={item.t}
|
||||||
baseUrl={this.props.Site_Url}
|
baseUrl={this.props.Site_Url}
|
||||||
dateFormat={'MM-DD-YYYY HH:mm:ss'}
|
dateFormat='MM-DD-YYYY HH:mm:ss'
|
||||||
onPress={() => this._onPressItem(item._id, item)}
|
onPress={() => this._onPressItem(item._id, item)}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
|
@ -271,7 +275,9 @@ export default class RoomsListView extends React.Component {
|
||||||
render = () => (
|
render = () => (
|
||||||
<View style={styles.container}>
|
<View style={styles.container}>
|
||||||
<Banner />
|
<Banner />
|
||||||
{this.renderList()}
|
<SafeAreaView style={styles.safeAreaView}>
|
||||||
{this.renderCreateButtons()}
|
{this.renderList()}
|
||||||
|
{this.renderCreateButtons()}
|
||||||
|
</SafeAreaView>
|
||||||
</View>)
|
</View>)
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@ import { ListView } from 'realm/react-native';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import Icon from 'react-native-vector-icons/Ionicons';
|
import Icon from 'react-native-vector-icons/Ionicons';
|
||||||
import { View, StyleSheet, TextInput, Text, TouchableOpacity } from 'react-native';
|
import { View, StyleSheet, TextInput, Text, TouchableOpacity, SafeAreaView } from 'react-native';
|
||||||
import { connect } from 'react-redux';
|
import { connect } from 'react-redux';
|
||||||
import * as actions from '../actions';
|
import * as actions from '../actions';
|
||||||
import * as server from '../actions/connect';
|
import * as server from '../actions/connect';
|
||||||
|
@ -20,6 +20,10 @@ const styles = StyleSheet.create({
|
||||||
alignItems: 'stretch',
|
alignItems: 'stretch',
|
||||||
justifyContent: 'center'
|
justifyContent: 'center'
|
||||||
},
|
},
|
||||||
|
safeAreaView: {
|
||||||
|
flex: 1,
|
||||||
|
backgroundColor: '#FFFFFF'
|
||||||
|
},
|
||||||
list: {
|
list: {
|
||||||
width: '100%',
|
width: '100%',
|
||||||
backgroundColor: '#FFFFFF'
|
backgroundColor: '#FFFFFF'
|
||||||
|
@ -84,10 +88,10 @@ export default class RoomsListView extends React.Component {
|
||||||
.filtered('_server.id = $0 AND t = $1', this.props.server, 'd');
|
.filtered('_server.id = $0 AND t = $1', this.props.server, 'd');
|
||||||
this.state = {
|
this.state = {
|
||||||
dataSource: ds.cloneWithRows(this.data),
|
dataSource: ds.cloneWithRows(this.data),
|
||||||
searching: false,
|
// searching: false,
|
||||||
searchDataSource: [],
|
// searchDataSource: [],
|
||||||
searchText: '',
|
searchText: ''
|
||||||
login: false
|
// login: false
|
||||||
};
|
};
|
||||||
this.data.addListener(this.updateState);
|
this.data.addListener(this.updateState);
|
||||||
}
|
}
|
||||||
|
@ -100,8 +104,8 @@ export default class RoomsListView extends React.Component {
|
||||||
onSearchChangeText = (text) => {
|
onSearchChangeText = (text) => {
|
||||||
const searchText = text.trim();
|
const searchText = text.trim();
|
||||||
this.setState({
|
this.setState({
|
||||||
searchText: text,
|
searchText: text
|
||||||
searching: searchText !== ''
|
// searching: searchText !== ''
|
||||||
});
|
});
|
||||||
if (searchText === '') {
|
if (searchText === '') {
|
||||||
return this.setState({
|
return this.setState({
|
||||||
|
@ -264,8 +268,10 @@ export default class RoomsListView extends React.Component {
|
||||||
render = () => (
|
render = () => (
|
||||||
<View style={styles.container}>
|
<View style={styles.container}>
|
||||||
<Banner />
|
<Banner />
|
||||||
{this.renderList()}
|
<SafeAreaView style={styles.safeAreaView}>
|
||||||
{this.renderCreateButton()}
|
{this.renderList()}
|
||||||
|
{this.renderCreateButton()}
|
||||||
|
</SafeAreaView>
|
||||||
</View>
|
</View>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
76
package.json
76
package.json
|
@ -5,7 +5,7 @@
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node node_modules/react-native/local-cli/cli.js start",
|
"start": "node node_modules/react-native/local-cli/cli.js start",
|
||||||
"test": "jest",
|
"test": "jest",
|
||||||
"updateSnapshot": "jest --updateSnapshot",
|
"test-update": "jest --updateSnapshot",
|
||||||
"lint": "eslint .",
|
"lint": "eslint .",
|
||||||
"ci": "eslint . && jest && codecov",
|
"ci": "eslint . && jest && codecov",
|
||||||
"ios": "react-native run-ios",
|
"ios": "react-native run-ios",
|
||||||
|
@ -16,60 +16,64 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"babel-plugin-transform-decorators-legacy": "^1.3.4",
|
"babel-plugin-transform-decorators-legacy": "^1.3.4",
|
||||||
"babel-polyfill": "^6.26.0",
|
"babel-polyfill": "^6.26.0",
|
||||||
"moment": "^2.18.1",
|
"moment": "^2.19.2",
|
||||||
"prop-types": "^15.5.10",
|
"prop-types": "^15.6.0",
|
||||||
"react": "16.0.0-alpha.12",
|
"react": "16.1.0",
|
||||||
"react-emojione": "^3.1.10",
|
"react-emojione": "^3.1.10",
|
||||||
"react-native": "0.46.1",
|
"react-native": "0.50.3",
|
||||||
"react-native-action-button": "^2.7.2",
|
"react-native-action-button": "^2.8.1",
|
||||||
"react-native-animatable": "^1.2.3",
|
"react-native-animatable": "^1.2.4",
|
||||||
"react-native-card-view": "0.0.3",
|
"react-native-card-view": "0.0.3",
|
||||||
"react-native-easy-markdown": "git+https://github.com/lappalj4/react-native-easy-markdown.git",
|
"react-native-easy-markdown": "git+https://github.com/lappalj4/react-native-easy-markdown.git",
|
||||||
"react-native-fetch-blob": "^0.10.8",
|
"react-native-fetch-blob": "^0.10.8",
|
||||||
"react-native-image-picker": "^0.26.4",
|
"react-native-image-picker": "^0.26.7",
|
||||||
"react-native-img-cache": "^1.4.0",
|
"react-native-img-cache": "^1.5.0",
|
||||||
"react-native-keyboard-aware-scroll-view": "^0.3.0",
|
"react-native-keyboard-aware-scroll-view": "^0.4.1",
|
||||||
"react-native-loading-spinner-overlay": "^0.5.2",
|
"react-native-loading-spinner-overlay": "^0.5.2",
|
||||||
"react-native-meteor": "^1.1.0",
|
"react-native-meteor": "^1.2.0",
|
||||||
"react-native-modal": "^3.1.0",
|
"react-native-modal": "^4.1.1",
|
||||||
"react-native-optimized-flatlist": "^1.0.1",
|
"react-native-optimized-flatlist": "^1.0.3",
|
||||||
"react-native-svg": "^5.4.1",
|
"react-native-svg": "^6.0.0",
|
||||||
"react-native-svg-image": "^1.1.4",
|
"react-native-svg-image": "^2.0.1",
|
||||||
"react-native-vector-icons": "^4.3.0",
|
"react-native-vector-icons": "^4.4.2",
|
||||||
"react-native-zeroconf": "^0.8.1",
|
"react-native-zeroconf": "^0.8.3",
|
||||||
"react-navigation": "^1.0.0-beta.11",
|
"react-navigation": "^1.0.0-beta.19",
|
||||||
"react-redux": "^5.0.6",
|
"react-redux": "^5.0.6",
|
||||||
"realm": "^1.10.1",
|
"realm": "^1.10.1",
|
||||||
"redux": "^3.7.2",
|
"redux": "^3.7.2",
|
||||||
"redux-immutable-state-invariant": "^2.0.0",
|
"redux-immutable-state-invariant": "^2.1.0",
|
||||||
"redux-logger": "^3.0.6",
|
"redux-logger": "^3.0.6",
|
||||||
"redux-saga": "^0.15.6",
|
"redux-saga": "^0.16.0",
|
||||||
"regenerator-runtime": "^0.11.0",
|
"regenerator-runtime": "^0.11.0",
|
||||||
"remote-redux-devtools": "^0.5.12",
|
"remote-redux-devtools": "^0.5.12",
|
||||||
"strip-ansi": "^4.0.0"
|
"strip-ansi": "^4.0.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@storybook/addon-storyshots": "^3.2.6",
|
"@storybook/addon-storyshots": "^3.2.15",
|
||||||
"@storybook/react-native": "^3.2.4",
|
"@storybook/react-native": "^3.2.15",
|
||||||
"babel-eslint": "^7.2.3",
|
"babel-eslint": "^8.0.2",
|
||||||
"babel-jest": "20.0.3",
|
"babel-jest": "21.2.0",
|
||||||
"babel-preset-react-native": "2.1.0",
|
"babel-preset-react-native": "4.0.0",
|
||||||
"codecov": "^2.3.0",
|
"codecov": "^3.0.0",
|
||||||
"eslint": "^4.4.0",
|
"eslint": "^4.11.0",
|
||||||
"eslint-config-airbnb": "^15.1.0",
|
"eslint-config-airbnb": "^16.1.0",
|
||||||
"eslint-plugin-import": "^2.7.0",
|
"eslint-plugin-import": "^2.8.0",
|
||||||
"eslint-plugin-jsx-a11y": "^6.0.2",
|
"eslint-plugin-jsx-a11y": "^6.0.2",
|
||||||
"eslint-plugin-react": "^7.1.0",
|
"eslint-plugin-react": "^7.4.0",
|
||||||
"eslint-plugin-react-native": "^3.0.1",
|
"eslint-plugin-react-native": "^3.1.0",
|
||||||
"jest": "20.0.4",
|
"identity-obj-proxy": "^3.0.0",
|
||||||
"jest-cli": "^20.0.4",
|
"jest": "21.2.1",
|
||||||
"react-dom": "16.0.0-alpha.12",
|
"jest-cli": "^21.2.1",
|
||||||
"react-test-renderer": "16.0.0-alpha.12"
|
"react-dom": "16.1.0",
|
||||||
|
"react-test-renderer": "16.1.0"
|
||||||
},
|
},
|
||||||
"jest": {
|
"jest": {
|
||||||
"preset": "react-native",
|
"preset": "react-native",
|
||||||
"coverageDirectory": "./coverage/",
|
"coverageDirectory": "./coverage/",
|
||||||
"collectCoverage": true
|
"collectCoverage": true,
|
||||||
|
"moduleNameMapper": {
|
||||||
|
".+\\.(css|styl|less|sass|scss|png|jpg|ttf|woff|woff2)$": "identity-obj-proxy"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8.x",
|
"node": ">=8.x",
|
||||||
|
|
|
@ -5,9 +5,9 @@ import Avatar from '../../app/containers/Avatar';
|
||||||
|
|
||||||
export default (
|
export default (
|
||||||
<ScrollView>
|
<ScrollView>
|
||||||
<Avatar text={'test'} />
|
<Avatar text='test' />
|
||||||
<Avatar size={40} text={'aa'} />
|
<Avatar size={40} text='aa' />
|
||||||
<Avatar size={30} text={'bb'} />
|
<Avatar size={30} text='bb' />
|
||||||
<Avatar text={'test'} borderRadius={2} />
|
<Avatar text='test' borderRadius={2} />
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue