Ver código fonte

Merge branch 'main' into matteing-sprint-1

# Conflicts:
#	src/components/DropdownComponent.tsx
Sergio Mattei 2 anos atrás
pai
commit
d94c95d5a4

+ 15
- 0
.expo/README.md Ver arquivo

@@ -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 Ver arquivo

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

BIN
public/assets/icon/about.png Ver arquivo


BIN
public/assets/icon/articule.png Ver arquivo


BIN
public/assets/icon/law.jpeg Ver arquivo


+ 46
- 3
src/App.tsx Ver arquivo

@@ -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 */
@@ -36,6 +43,11 @@ import LawListPage from "./pages/LawListPage";
36 43
 import ArticlePage from "./pages/ArticlePage";
37 44
 import "./theme/global.css";
38 45
 import "react-notion-x/src/styles.css";
46
+import AboutListPage from "./pages/AboutListPage";
47
+import CasitaPage from "./pages/services/CasitaPage";
48
+import CrecemosPage from "./pages/services/CrecemosPage";
49
+import LazosPage from "./pages/services/LazosPage";
50
+import SupervisadasPage from "./pages/services/SupervisadasPage";
39 51
 
40 52
 setupIonicReact();
41 53
 
@@ -47,30 +59,61 @@ const App: React.FC = () => (
47 59
           <Route exact path="/home">
48 60
             <Home />
49 61
           </Route>
62
+
50 63
           <Route path="/advice">
51 64
             <AdviceListPage />
52 65
           </Route>
66
+
53 67
           <Route path="/laws">
54 68
             <LawListPage />
55 69
           </Route>
70
+
56 71
           <Route path="/article/:articleId" component={ArticlePage} />
72
+
73
+          <Route path="/services/lazos">
74
+            <LazosPage />
75
+          </Route>
76
+
77
+          <Route path="/services/crecemos">
78
+            <CrecemosPage />
79
+          </Route>
80
+
81
+          <Route path="/services/supervisadas">
82
+            <SupervisadasPage />
83
+          </Route>
84
+
85
+          <Route path="/about">
86
+            <AboutListPage />
87
+          </Route>
88
+
89
+          <Route path="/services/casita">
90
+            <CasitaPage />
91
+          </Route>
92
+
57 93
           <Route exact path="/">
58 94
             <Redirect to="/home" />
59 95
           </Route>
60 96
         </IonRouterOutlet>
97
+
61 98
         <IonTabBar slot="bottom">
62 99
           <IonTabButton tab="home" href="/home">
63 100
             <IonIcon icon={home} />
64 101
             <IonLabel>Home</IonLabel>
65 102
           </IonTabButton>
103
+
66 104
           <IonTabButton tab="advice" href="/advice">
67
-            <IonIcon icon={ellipse} />
105
+            <IonIcon icon={peopleCircleSharp} />
68 106
             <IonLabel>Advice</IonLabel>
69 107
           </IonTabButton>
108
+
70 109
           <IonTabButton tab="laws" href="/laws">
71
-            <IonIcon icon={ellipse} />
110
+            <IonIcon icon={bookSharp} />
72 111
             <IonLabel>Laws</IonLabel>
73 112
           </IonTabButton>
113
+          <IonTabButton tab="about" href="/about">
114
+            <IonIcon icon={informationCircleSharp} />
115
+            <IonLabel>About</IonLabel>
116
+          </IonTabButton>
74 117
         </IonTabBar>
75 118
       </IonTabs>
76 119
     </IonReactRouter>

+ 0
- 3
src/components/DropdownComponent.css Ver arquivo

@@ -1,3 +0,0 @@
1
-.accordion-list-container {
2
-    width: 100%;
3
-}

+ 0
- 28
src/components/DropdownComponent.tsx Ver arquivo

@@ -1,28 +0,0 @@
1
-import {
2
-  IonAccordion,
3
-  IonAccordionGroup,
4
-  IonItem,
5
-  IonLabel,
6
-} from "@ionic/react";
7
-import { PropsWithChildren } from "react";
8
-import "./DropdownComponent.css";
9
-
10
-const DropdownComponent: React.FC<
11
-  {
12
-    name: string;
13
-  } & PropsWithChildren
14
-> = ({ name, children }) => {
15
-  return (
16
-    <IonAccordionGroup>
17
-      <IonAccordion value={name}>
18
-        <IonItem slot="header" color="light">
19
-          <IonLabel>{name}</IonLabel>
20
-        </IonItem>
21
-        <IonItem slot="content">
22
-          <div className="accordion-list-container">{children}</div>
23
-        </IonItem>
24
-      </IonAccordion>
25
-    </IonAccordionGroup>
26
-  );
27
-};
28
-export default DropdownComponent;

+ 60
- 0
src/pages/AboutListPage.tsx Ver arquivo

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

+ 46
- 0
src/pages/services/CasitaPage.tsx Ver arquivo

@@ -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 Ver arquivo

@@ -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 Ver arquivo

@@ -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 Ver arquivo

@@ -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;