diff --git a/JokesApp/App.tsx b/JokesApp/App.tsx index 0c72332..9f642de 100644 --- a/JokesApp/App.tsx +++ b/JokesApp/App.tsx @@ -6,6 +6,8 @@ import {loadExtensions} from "./extensions"; loadExtensions(); export default function App() { + + // La JokeFactory permet de transformer les blagues json en tableau de blague SampleJoke ou CustomJoke afin de pouvoir les afficher let customJokes = JokeFactory.createCustomJokes(JokeStub.customJokes); let samplesJokes = JokeFactory.createSampleJokes(JokeStub.sampleJokes); diff --git a/JokesApp/extensions.js b/JokesApp/extensions.js index a15cef2..f28704a 100644 --- a/JokesApp/extensions.js +++ b/JokesApp/extensions.js @@ -1,6 +1,5 @@ -// Fonction pour étendre le prototype d'Array avec une nouvelle méthode print +// Fonction pour étendre le prototype d'Array export function loadExtensions() { - // Ajout de la méthode print au prototype d'Array if (!Array.prototype.displayJoke) { Array.prototype.displayJoke = function () { return this.map((item) => item.description() + '\n') diff --git a/JokesApp/model/CustomJoke.ts b/JokesApp/model/CustomJoke.ts index 572a9d8..fa60409 100644 --- a/JokesApp/model/CustomJoke.ts +++ b/JokesApp/model/CustomJoke.ts @@ -1,5 +1,6 @@ import { Joke } from "./Joke"; +// Class CustomJoke héritant de Joke export class CustomJoke extends Joke{ private _id : string diff --git a/JokesApp/model/Joke.ts b/JokesApp/model/Joke.ts index effdb06..826cda1 100644 --- a/JokesApp/model/Joke.ts +++ b/JokesApp/model/Joke.ts @@ -1,3 +1,4 @@ +// Classe abstraite Joke permettant de creer une joke avec différents attributs export abstract class Joke{ private _type : string @@ -27,10 +28,12 @@ export abstract class Joke{ return this._image; } + // Permet d'afficher les 25 premiers caractères du contexte de la blague suivis de ... public summary():string{ return this.setup.substring(0,25) + ' ...' } + // Permet de retourner le type d'une blague + sont contexte public description():string{ return this.type() + ' - ' +this.summary() } diff --git a/JokesApp/model/JokeFactory.ts b/JokesApp/model/JokeFactory.ts index 7097a8b..57597a3 100644 --- a/JokesApp/model/JokeFactory.ts +++ b/JokesApp/model/JokeFactory.ts @@ -3,6 +3,7 @@ import { SampleJoke } from "./SampleJoke"; export class JokeFactory { + // Permets de transformer les données json en Tableau de CustomsJokes et de le retourner public static createCustomJokes(jsonArray: string) : CustomJoke[]{ let array = [] let json = JSON.parse(jsonArray) @@ -13,6 +14,7 @@ export class JokeFactory { return array; } + // Permets de transformer les données json en Tableau de SampleJokes et de le retourner static createSampleJokes(jsonArray: string): SampleJoke[] { let array = []; diff --git a/JokesApp/model/JokeStub.ts b/JokesApp/model/JokeStub.ts index c3db33f..8d36917 100644 --- a/JokesApp/model/JokeStub.ts +++ b/JokesApp/model/JokeStub.ts @@ -1,5 +1,6 @@ import {SampleJoke} from "./SampleJoke"; +// Stub permettant de stocker les différentes blagues de différents types export class JokeStub { // Données JSON pour les CustomJokes public static customJokes = '[{"type":"custom", "setup":"Quel jour les poules ont-elles l anus dilaté au maximum ?", "punchline":"Le jour où elles passent du coq à l âne.", "image":"image1", "id":"id1"}, {"type":"custom", "setup":"Savez-vous comment on appelle le sexe de Michael Jackson ???", "punchline":"Vérité ! Car la vérité sort toujours de la bouche des enfants .", "image":"image2", "id":"id2"}]'; diff --git a/JokesApp/model/SampleJoke.ts b/JokesApp/model/SampleJoke.ts index e8270de..7d1e356 100644 --- a/JokesApp/model/SampleJoke.ts +++ b/JokesApp/model/SampleJoke.ts @@ -1,5 +1,7 @@ import { Joke } from "./Joke"; + +// Class SampleJoke héritant de Joke export class SampleJoke extends Joke{ private _id : number