#5 Añadir view de servicios de Renacer Social e íconos para el menú

Samengevoegd
eliam.ruiz heeft 3 commits samengevoegd van eduardo-sprint-2 naar main 2 jaren geleden

+ 15
- 0
.expo/README.md Bestand weergeven

@@ -0,0 +1,15 @@
1
+> Why do I have a folder named ".expo" in my project?
2
+
3
+The ".expo" folder is created when an Expo project is started using "expo start" command.
4
+
5
+> What do the files contain?
6
+
7
+- "devices.json": contains information about devices that have recently opened this project. This is used to populate the "Development sessions" list in your development builds.
8
+- "packager-info.json": contains port numbers and process PIDs that are used to serve the application to the mobile device/simulator.
9
+- "settings.json": contains the server configuration that is used to serve the application manifest.
10
+
11
+> Should I commit the ".expo" folder?
12
+
13
+No, you should not share the ".expo" folder. It does not contain any information that is relevant for other developers working on the project, it is specific to your machine.
14
+
15
+Upon project creation, the ".expo" folder is already added to your ".gitignore" file.

+ 8
- 0
.expo/settings.json Bestand weergeven

@@ -0,0 +1,8 @@
1
+{
2
+  "hostType": "lan",
3
+  "lanType": "ip",
4
+  "dev": true,
5
+  "minify": false,
6
+  "urlRandomness": null,
7
+  "https": false
8
+}

+ 3077
- 683
package-lock.json
Diff onderdrukt omdat het te groot bestand
Bestand weergeven


+ 2
- 2
package.json Bestand weergeven

@@ -27,7 +27,6 @@
27 27
     "react-dom": "^18.2.0",
28 28
     "react-router": "^5.2.0",
29 29
     "react-router-dom": "^5.2.0",
30
-    "react-scripts": "^5.0.0",
31 30
     "typescript": "^4.1.3",
32 31
     "web-vitals": "^0.2.4",
33 32
     "workbox-background-sync": "^5.1.4",
@@ -72,7 +71,8 @@
72 71
     "@capacitor/cli": "4.4.0",
73 72
     "@ionic/lab": "3.2.15",
74 73
     "husky": "^8.0.0",
75
-    "pretty-quick": "^3.1.3"
74
+    "pretty-quick": "^3.1.3",
75
+    "react-scripts": "5.0.1"
76 76
   },
77 77
   "description": "An Ionic project"
78 78
 }

BIN
public/assets/icon/about.png Bestand weergeven


BIN
public/assets/icon/articule.png Bestand weergeven


BIN
public/assets/icon/law.jpeg Bestand weergeven


+ 45
- 3
src/App.tsx Bestand weergeven

@@ -10,7 +10,14 @@ import {
10 10
   setupIonicReact,
11 11
 } from "@ionic/react";
12 12
 import { IonReactRouter } from "@ionic/react-router";
13
-import { ellipse, home } from "ionicons/icons";
13
+import {
14
+  ellipse,
15
+  informationCircleSharp,
16
+  bookSharp,
17
+  appsSharp,
18
+  home,
19
+  peopleCircleSharp,
20
+} from "ionicons/icons";
14 21
 import Home from "./pages/Home";
15 22
 
16 23
 /* Core CSS required for Ionic components to work properly */
@@ -34,6 +41,11 @@ import "./theme/variables.css";
34 41
 import AdviceListPage from "./pages/AdviceListPage";
35 42
 import LawListPage from "./pages/LawListPage";
36 43
 import ArticlePage from "./pages/ArticlePage";
44
+import AboutListPage from "./pages/AboutListPage";
45
+import CasitaPage from "./pages/services/CasitaPage";
46
+import CrecemosPage from "./pages/services/CrecemosPage";
47
+import LazosPage from "./pages/services/LazosPage";
48
+import SupervisadasPage from "./pages/services/SupervisadasPage";
37 49
 
38 50
 setupIonicReact();
39 51
 
@@ -45,30 +57,60 @@ const App: React.FC = () => (
45 57
           <Route exact path="/home">
46 58
             <Home />
47 59
           </Route>
60
+
48 61
           <Route path="/advice">
49 62
             <AdviceListPage />
50 63
           </Route>
64
+
51 65
           <Route path="/laws">
52 66
             <LawListPage />
53 67
           </Route>
68
+
69
+          <Route path="/about">
70
+            <AboutListPage />
71
+          </Route>
72
+
73
+          <Route path="/services/casita">
74
+            <CasitaPage />
75
+          </Route>
76
+
77
+          <Route path="/services/supervisadas">
78
+            <SupervisadasPage />
79
+          </Route>
80
+
81
+          <Route path="/services/crecemos">
82
+            <CrecemosPage />
83
+          </Route>
84
+
85
+          <Route path="/services/lazos">
86
+            <LazosPage />
87
+          </Route>
88
+
54 89
           <Route path="/article/:slug" component={ArticlePage} />
55 90
           <Route exact path="/">
56 91
             <Redirect to="/home" />
57 92
           </Route>
58 93
         </IonRouterOutlet>
94
+
59 95
         <IonTabBar slot="bottom">
60 96
           <IonTabButton tab="home" href="/home">
61 97
             <IonIcon icon={home} />
62 98
             <IonLabel>Home</IonLabel>
63 99
           </IonTabButton>
100
+
64 101
           <IonTabButton tab="advice" href="/advice">
65
-            <IonIcon icon={ellipse} />
102
+            <IonIcon icon={peopleCircleSharp} />
66 103
             <IonLabel>Advice</IonLabel>
67 104
           </IonTabButton>
105
+
68 106
           <IonTabButton tab="laws" href="/laws">
69
-            <IonIcon icon={ellipse} />
107
+            <IonIcon icon={bookSharp} />
70 108
             <IonLabel>Laws</IonLabel>
71 109
           </IonTabButton>
110
+          <IonTabButton tab="about" href="/about">
111
+            <IonIcon icon={informationCircleSharp} />
112
+            <IonLabel>About</IonLabel>
113
+          </IonTabButton>
72 114
         </IonTabBar>
73 115
       </IonTabs>
74 116
     </IonReactRouter>

+ 61
- 0
src/pages/AboutListPage.tsx Bestand weergeven

@@ -0,0 +1,61 @@
1
+import {
2
+  IonContent,
3
+  IonHeader,
4
+  IonItem,
5
+  IonList,
6
+  IonPage,
7
+  IonTitle,
8
+  IonToolbar,
9
+} from "@ionic/react";
10
+import ListComponent from "../components/ListComponent";
11
+
12
+const AboutListPage: React.FC = () => {
13
+  return (
14
+    <IonPage>
15
+      <IonHeader>
16
+        <IonToolbar>
17
+          <IonTitle>About</IonTitle>
18
+        </IonToolbar>
19
+      </IonHeader>
20
+      <IonContent fullscreen>
21
+        <IonHeader collapse="condense">
22
+          <IonToolbar>
23
+            <IonTitle size="large">About</IonTitle>
24
+          </IonToolbar>
25
+        </IonHeader>
26
+        <div className="ion-padding">
27
+          <h5>Bienvenidos</h5>
28
+          <p>
29
+            Aqui tenemos una lista de las cosas que Renacer Social ofrece a la
30
+            sociedad.
31
+          </p>
32
+        </div>
33
+      </IonContent>
34
+      <IonList>
35
+        <IonItem routerLink={`/services/casita`}>
36
+          <p className="ListItemText">Casita de Paz</p>
37
+        </IonItem>
38
+      </IonList>
39
+
40
+      <IonList>
41
+        <IonItem routerLink={`/services/Crecemos`}>
42
+          <p className="ListItemText">Crecemos</p>
43
+        </IonItem>
44
+      </IonList>
45
+
46
+      <IonList>
47
+        <IonItem routerLink={`/services/Lazos`}>
48
+          <p className="ListItemText">Proyecto Lazos</p>
49
+        </IonItem>
50
+      </IonList>
51
+
52
+      <IonList>
53
+        <IonItem routerLink={`/services/Supervisadas`}>
54
+          <p className="ListItemText">Visitas Supervisadas</p>
55
+        </IonItem>
56
+      </IonList>
57
+    </IonPage>
58
+  );
59
+};
60
+
61
+export default AboutListPage;

+ 46
- 0
src/pages/services/CasitaPage.tsx Bestand weergeven

@@ -0,0 +1,46 @@
1
+import {
2
+  IonBackButton,
3
+  IonButtons,
4
+  IonCard,
5
+  IonCardContent,
6
+  IonCardHeader,
7
+  IonCardSubtitle,
8
+  IonCardTitle,
9
+  IonContent,
10
+  IonHeader,
11
+  IonPage,
12
+  IonTitle,
13
+  IonToolbar,
14
+} from "@ionic/react";
15
+import { RouteComponentProps } from "react-router";
16
+
17
+const CasitaPage: React.FC = () => {
18
+  return (
19
+    <IonPage>
20
+      <IonHeader>
21
+        <IonToolbar>
22
+          <IonButtons slot="start">
23
+            <IonBackButton />
24
+          </IonButtons>
25
+          <IonTitle>Servicios</IonTitle>
26
+        </IonToolbar>
27
+      </IonHeader>
28
+      <IonContent fullscreen>
29
+        <IonCard>
30
+          <img
31
+            alt="Silhouette of mountains"
32
+            src="https://ionicframework.com/docs/img/demos/card-media.png"
33
+          />
34
+          <IonCardHeader>
35
+            <IonCardTitle>Casita de Paz</IonCardTitle>
36
+            <IonCardSubtitle></IonCardSubtitle>
37
+          </IonCardHeader>
38
+
39
+          <IonCardContent>Romper ciclos negativos</IonCardContent>
40
+        </IonCard>
41
+      </IonContent>
42
+    </IonPage>
43
+  );
44
+};
45
+
46
+export default CasitaPage;

+ 46
- 0
src/pages/services/CrecemosPage.tsx Bestand weergeven

@@ -0,0 +1,46 @@
1
+import {
2
+  IonBackButton,
3
+  IonButtons,
4
+  IonCard,
5
+  IonCardContent,
6
+  IonCardHeader,
7
+  IonCardSubtitle,
8
+  IonCardTitle,
9
+  IonContent,
10
+  IonHeader,
11
+  IonPage,
12
+  IonTitle,
13
+  IonToolbar,
14
+} from "@ionic/react";
15
+import { RouteComponentProps } from "react-router";
16
+
17
+const CrecemosPage: React.FC = () => {
18
+  return (
19
+    <IonPage>
20
+      <IonHeader>
21
+        <IonToolbar>
22
+          <IonButtons slot="start">
23
+            <IonBackButton />
24
+          </IonButtons>
25
+          <IonTitle>Servicios</IonTitle>
26
+        </IonToolbar>
27
+      </IonHeader>
28
+      <IonContent fullscreen>
29
+        <IonCard>
30
+          <img
31
+            alt="Silhouette of mountains"
32
+            src="https://ionicframework.com/docs/img/demos/card-media.png"
33
+          />
34
+          <IonCardHeader>
35
+            <IonCardTitle>Crecemos</IonCardTitle>
36
+            <IonCardSubtitle></IonCardSubtitle>
37
+          </IonCardHeader>
38
+
39
+          <IonCardContent>Educacion Co-parental</IonCardContent>
40
+        </IonCard>
41
+      </IonContent>
42
+    </IonPage>
43
+  );
44
+};
45
+
46
+export default CrecemosPage;

+ 46
- 0
src/pages/services/LazosPage.tsx Bestand weergeven

@@ -0,0 +1,46 @@
1
+import {
2
+  IonBackButton,
3
+  IonButtons,
4
+  IonCard,
5
+  IonCardContent,
6
+  IonCardHeader,
7
+  IonCardSubtitle,
8
+  IonCardTitle,
9
+  IonContent,
10
+  IonHeader,
11
+  IonPage,
12
+  IonTitle,
13
+  IonToolbar,
14
+} from "@ionic/react";
15
+import { RouteComponentProps } from "react-router";
16
+
17
+const LazosPage: React.FC = () => {
18
+  return (
19
+    <IonPage>
20
+      <IonHeader>
21
+        <IonToolbar>
22
+          <IonButtons slot="start">
23
+            <IonBackButton />
24
+          </IonButtons>
25
+          <IonTitle>Servicios</IonTitle>
26
+        </IonToolbar>
27
+      </IonHeader>
28
+      <IonContent fullscreen>
29
+        <IonCard>
30
+          <img
31
+            alt="Silhouette of mountains"
32
+            src="https://ionicframework.com/docs/img/demos/card-media.png"
33
+          />
34
+          <IonCardHeader>
35
+            <IonCardTitle>Proyecto de Lazos</IonCardTitle>
36
+            <IonCardSubtitle></IonCardSubtitle>
37
+          </IonCardHeader>
38
+
39
+          <IonCardContent>Maltrato de Parejas</IonCardContent>
40
+        </IonCard>
41
+      </IonContent>
42
+    </IonPage>
43
+  );
44
+};
45
+
46
+export default LazosPage;

+ 48
- 0
src/pages/services/SupervisadasPage.tsx Bestand weergeven

@@ -0,0 +1,48 @@
1
+import {
2
+  IonBackButton,
3
+  IonButtons,
4
+  IonCard,
5
+  IonCardContent,
6
+  IonCardHeader,
7
+  IonCardSubtitle,
8
+  IonCardTitle,
9
+  IonContent,
10
+  IonHeader,
11
+  IonPage,
12
+  IonTitle,
13
+  IonToolbar,
14
+} from "@ionic/react";
15
+import { RouteComponentProps } from "react-router";
16
+
17
+const SupervisadasPage: React.FC = () => {
18
+  return (
19
+    <IonPage>
20
+      <IonHeader>
21
+        <IonToolbar>
22
+          <IonButtons slot="start">
23
+            <IonBackButton />
24
+          </IonButtons>
25
+          <IonTitle>Servicios</IonTitle>
26
+        </IonToolbar>
27
+      </IonHeader>
28
+      <IonContent fullscreen>
29
+        <IonCard>
30
+          <img
31
+            alt="Silhouette of mountains"
32
+            src="https://ionicframework.com/docs/img/demos/card-media.png"
33
+          />
34
+          <IonCardHeader>
35
+            <IonCardTitle>Visitas Supervisadas</IonCardTitle>
36
+            <IonCardSubtitle></IonCardSubtitle>
37
+          </IonCardHeader>
38
+
39
+          <IonCardContent>
40
+            Espacio tranquilo y seguro para visitas supervisadas
41
+          </IonCardContent>
42
+        </IonCard>
43
+      </IonContent>
44
+    </IonPage>
45
+  );
46
+};
47
+
48
+export default SupervisadasPage;