Render changelog.md instead of opening a webview #10
6 changed files with 493 additions and 1 deletions
81
package-lock.json
generated
81
package-lock.json
generated
|
@ -3221,6 +3221,11 @@
|
|||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
|
||||
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
|
||||
},
|
||||
"camelize": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz",
|
||||
"integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs="
|
||||
},
|
||||
"capture-exit": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz",
|
||||
|
@ -3531,6 +3536,21 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"css-color-keywords": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz",
|
||||
"integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU="
|
||||
},
|
||||
"css-to-react-native": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz",
|
||||
"integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==",
|
||||
"requires": {
|
||||
"camelize": "^1.0.0",
|
||||
"css-color-keywords": "^1.0.0",
|
||||
"postcss-value-parser": "^4.0.2"
|
||||
}
|
||||
},
|
||||
"cssom": {
|
||||
"version": "0.4.4",
|
||||
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
|
||||
|
@ -8549,6 +8569,14 @@
|
|||
"integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
|
||||
"dev": true
|
||||
},
|
||||
"linkify-it": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz",
|
||||
"integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==",
|
||||
"requires": {
|
||||
"uc.micro": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"load-json-file": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
|
||||
|
@ -8798,6 +8826,30 @@
|
|||
"object-visit": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"markdown-it": {
|
||||
"version": "10.0.0",
|
||||
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz",
|
||||
"integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==",
|
||||
"requires": {
|
||||
"argparse": "^1.0.7",
|
||||
"entities": "~2.0.0",
|
||||
"linkify-it": "^2.0.0",
|
||||
"mdurl": "^1.0.1",
|
||||
"uc.micro": "^1.0.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"entities": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz",
|
||||
"integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"mdurl": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
|
||||
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4="
|
||||
},
|
||||
"merge-stream": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz",
|
||||
|
@ -9973,6 +10025,11 @@
|
|||
"resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
|
||||
"integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs="
|
||||
},
|
||||
"postcss-value-parser": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz",
|
||||
"integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ=="
|
||||
},
|
||||
"prelude-ls": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
|
||||
|
@ -10365,6 +10422,14 @@
|
|||
"prop-types": "^15.6.2"
|
||||
}
|
||||
},
|
||||
"react-native-fit-image": {
|
||||
"version": "1.5.5",
|
||||
"resolved": "https://registry.npmjs.org/react-native-fit-image/-/react-native-fit-image-1.5.5.tgz",
|
||||
"integrity": "sha512-Wl3Vq2DQzxgsWKuW4USfck9zS7YzhvLNPpkwUUCF90bL32e1a0zOVQ3WsJILJOwzmPdHfzZmWasiiAUNBkhNkg==",
|
||||
"requires": {
|
||||
"prop-types": "^15.5.10"
|
||||
}
|
||||
},
|
||||
"react-native-gesture-handler": {
|
||||
"version": "1.7.0",
|
||||
"resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-1.7.0.tgz",
|
||||
|
@ -10416,6 +10481,17 @@
|
|||
"resolved": "https://registry.npmjs.org/react-native-localize/-/react-native-localize-1.4.1.tgz",
|
||||
"integrity": "sha512-g1L1au6GtCd0Ci6lQ8JVPYgl7uvEtKY2jeVghJcV6qQEN9+qACyqjOIR8pskUyI+qcSj1z4/nZh3IFxDVu1drw=="
|
||||
},
|
||||
"react-native-markdown-display": {
|
||||
"version": "6.1.6",
|
||||
"resolved": "https://registry.npmjs.org/react-native-markdown-display/-/react-native-markdown-display-6.1.6.tgz",
|
||||
"integrity": "sha512-B/nHcsJ/lFie/GCmQKU1EJeDNTYRRY/sHMQEC9nzJ5uN8pm5F0KTFfC/UZn/Jb9x8Mi/S0neBw54UL+sygphUg==",
|
||||
"requires": {
|
||||
"css-to-react-native": "^3.0.0",
|
||||
"markdown-it": "^10.0.0",
|
||||
"prop-types": "^15.7.2",
|
||||
"react-native-fit-image": "^1.5.5"
|
||||
}
|
||||
},
|
||||
"react-native-modalize": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/react-native-modalize/-/react-native-modalize-2.0.5.tgz",
|
||||
|
@ -11916,6 +11992,11 @@
|
|||
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz",
|
||||
"integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ=="
|
||||
},
|
||||
"uc.micro": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
|
||||
"integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA=="
|
||||
},
|
||||
"uglify-es": {
|
||||
"version": "3.3.9",
|
||||
"resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz",
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
"react-native-keychain": "^6.1.1",
|
||||
"react-native-linear-gradient": "^2.5.6",
|
||||
"react-native-localize": "^1.4.1",
|
||||
"react-native-markdown-display": "^6.1.6",
|
||||
"react-native-modalize": "^2.0.5",
|
||||
"react-native-paper": "^4.0.1",
|
||||
"react-native-permissions": "^2.1.5",
|
||||
|
|
381
src/components/Screens/MarkdownRenderScreen.js
Normal file
381
src/components/Screens/MarkdownRenderScreen.js
Normal file
|
@ -0,0 +1,381 @@
|
|||
// @flow
|
||||
|
||||
import * as React from 'react';
|
||||
import {Card, Text, Title, withTheme} from 'react-native-paper';
|
||||
import {FlatList, StyleSheet} from "react-native";
|
||||
import {View} from "react-native-animatable";
|
||||
|
||||
type PropsType = {};
|
||||
|
||||
type VersionType = {
|
||||
bug_fix: Array<string>,
|
||||
dev_notes: Array<string>,
|
||||
news: Array<string>,
|
||||
version: string,
|
||||
releaseDate: string,
|
||||
};
|
||||
|
||||
type JsonResponseType = {
|
||||
currentVersion: VersionType,
|
||||
nextVersion: VersionType,
|
||||
previousVersions: Array<VersionType>,
|
||||
}
|
||||
|
||||
type StateType = {
|
||||
text: JsonResponseType,
|
||||
}
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
title: {
|
||||
fontSize: 20,
|
||||
fontWeight: "bold",
|
||||
textAlign: "center",
|
||||
}
|
||||
})
|
||||
|
||||
/**
|
||||
* Read a text file and output the content
|
||||
*
|
||||
* Example Usage:
|
||||
* <MarkdownRender
|
||||
txt={url_to_file}
|
||||
/>
|
||||
*/
|
||||
class MarkdownRender extends React.Component<PropsType, StateType> {
|
||||
|
||||
|
||||
text: JsonResponseType = {
|
||||
"currentVersion": {
|
||||
"bug_fix": [
|
||||
"- Correction de crash au démarrage sur certains appareils",
|
||||
"- Correction de l'affichage de certains sites web"
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Force soloader 0.8.2"
|
||||
],
|
||||
"news": [
|
||||
"- Mise à jour des écrans d'intro pour mieux refléter l'appli actuelle",
|
||||
"- Déplacement du bouton *À propos* dans les paramètres",
|
||||
"- Mode sombre par défaut parce que voilà"
|
||||
],
|
||||
"releaseData": "13/06/2020",
|
||||
"version": "v3.0.7"
|
||||
},
|
||||
"nextVersion": {
|
||||
"bug_fix": [
|
||||
"- Correction d'un problème de connexion sur certains appareils android",
|
||||
"- Correction de l'icône de notification sur Android",
|
||||
"- Correction de bugs divers"
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Utilisation de prettier",
|
||||
"- Utilisation de eslint avec config de airbnb",
|
||||
"- Passage de React Native 62.2 à 63.2"
|
||||
],
|
||||
"news": [
|
||||
"- Ajout d'une mascotte !",
|
||||
"- Ajout de la sauvegarde des scores pour le jeu",
|
||||
"- Ajout de la personnalisation de la dashboard",
|
||||
"- Amélioration de l'intro",
|
||||
"- Amélioration de la page du jeu",
|
||||
"- Amélioration du visionnement des images",
|
||||
"- Amélioration des traductions",
|
||||
"- Amélioration des informations données par proxiwash",
|
||||
"- Amélioration de la visibilité des services Amicale sans compte",
|
||||
"- Améliorations générales de l'interface"
|
||||
],
|
||||
"releaseDate": "N/A",
|
||||
"version": "v4.0.1"
|
||||
},
|
||||
"previousVersions": [
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Passage de React Native 61.5 à 62.2",
|
||||
"- Utilisation du moteur JS Hermes et proguard"
|
||||
],
|
||||
"news": [
|
||||
"- Importante amélioration de la vitesse de démarrage et des performances",
|
||||
"- Nouvelle réduction importante de la taille de l'application à télécharger et une fois installée"
|
||||
],
|
||||
"releaseDate": "28/05/2020",
|
||||
"version": "v3.0.5"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Migration de Expo Managed Workflow à React Native Bare Workflow "
|
||||
],
|
||||
"news": [
|
||||
"- Nouvelle barre de navigation !",
|
||||
"- Nouveau planex tout beau tout neuf !",
|
||||
"- Suppression du menu déroulant gauche",
|
||||
"- Création d'une nouvelle catégorie dans la barre de navigation pour regrouper tous les services",
|
||||
"- Ajout d'animations un peu partout parce que c'est joli et j'ai compris comment faire :D",
|
||||
"- Ajout de la connexion au compte Amicale",
|
||||
"- Ajout de la liste des clubs, des élections et du profil utilisateur à travers son compte Amicale",
|
||||
"- Amélioration de la vitesse de démarrage et des performances",
|
||||
"- Réduction importante de la taille de l'application à télécharger et une fois installée"
|
||||
],
|
||||
"releaseDate": "26/05/2020",
|
||||
"version": "v3.0.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Utilisation de react-native-paper à la place de native base"
|
||||
],
|
||||
"news": [
|
||||
"- Nouvelle interface !",
|
||||
"- Amélioration des performances",
|
||||
"- Amélioration de la vitesse de démarrage"
|
||||
],
|
||||
"releaseDate": "12/03/2020",
|
||||
"version": "v2.0.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- Correction d'un problème d'affichage des détail du Proximo"
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
|
||||
],
|
||||
"releaseDate": "25/02/2020",
|
||||
"version": "v1.5.2"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Amélioration des performances",
|
||||
"- Utilisation d'un tri des catégories du Proximo plus cohérent"
|
||||
],
|
||||
"releaseDate": "24/02/2020",
|
||||
"version": "v1.5.1"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Passage de React Navigation 3 à 4",
|
||||
"- Mise à jour d'autres librairies"
|
||||
],
|
||||
"news": [
|
||||
"- Amélioration des performances de l'application",
|
||||
"- Amélioration du menu gauche",
|
||||
"- Ajout d'animations au changement d'écran",
|
||||
"- Affichage de l'événement de l'accueil directement au clic, au lieu de juste amener sur la liste"
|
||||
],
|
||||
"releaseDate": "05/02/2020",
|
||||
"version": "v1.5.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- Correction d'un crash lors du rafraichissement de planex",
|
||||
"- Correction de bugs divers"
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Ajout d'un accès rapide à BlueMind et l'ENT",
|
||||
"- Amélioration de l'apparence du menu gauche",
|
||||
"- Amélioration de l'affichage de Planex"
|
||||
],
|
||||
"releaseDate": "01/02/2020",
|
||||
"version": "v1.4.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- Correction d'un problème de Planex mettant des cours sans couleur de fond"
|
||||
],
|
||||
"dev_notes": [
|
||||
"- Yohan SIMARD rejoint le projet",
|
||||
"- Passage de Expo SDK 33 à SDK 36",
|
||||
"- Passage de React Native 59 à 61",
|
||||
"- Mise à jour d'autres librairies"
|
||||
],
|
||||
"news": [
|
||||
"- Ajout d'une barre de recherche dans Proximo",
|
||||
"- Amélioration de l'interface Proximo",
|
||||
"- Ajout d'un accès rapide au site des Élus Étudiants",
|
||||
"- Amélioration du mode plein écran de Planex"
|
||||
],
|
||||
"releaseDate": "29/01/2020",
|
||||
"version": "v1.3.3"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- Correction de quelques bugs"
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Ajout du support du mode paysage dans l'écran Planex pour une vue de la semaine entière",
|
||||
"- Ajout d'une page pour visualiser les salles en libre accès et réserver une Bib'Box",
|
||||
"- Ajout de Tutor'INSA sur la dashboard pour un accès rapide",
|
||||
"- Ouverture des sites web dans l'appli a la place d'utiliser le navigateur externe"
|
||||
],
|
||||
"releaseDate": "08/11/2019",
|
||||
"version": "v1.3.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- - Corrections de bugs"
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Ajout d'une dashboard sur la page d'accueil pour un accès rapide aux informations les plus importantes."
|
||||
],
|
||||
"releaseDate": "01/11/2019",
|
||||
"version": "v1.2.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Amélioration de la page Menu du RU",
|
||||
"- Suppression de l'affichage des articles en rupture de stock dans la page Proximo",
|
||||
"- Ajout de fonctionnalités de debug"
|
||||
],
|
||||
"releaseDate": "28/09/2019",
|
||||
"version": "v1.1.1"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Améliorations diverses de l'interface",
|
||||
"- Ajout de l'écran planning des événements"
|
||||
],
|
||||
"releaseDate": "17/09/2019 ",
|
||||
"version": "v1.1.0"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
"- Correction d'un crash sur l'écran du Proximo si l'utilisateur refuse les notifications"
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Ajout de la possibilité de choisir un écran de démarrage"
|
||||
],
|
||||
"releaseDate": "13/09/2019",
|
||||
"version": "v1.0.3"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Amélioration de l'interface du Proximo",
|
||||
"- Ajout de la possibilité de cliquer sur un article du Proximo pour afficher plus de détails"
|
||||
],
|
||||
"releaseDate": "12/09/2019",
|
||||
"version": "v1.0.2"
|
||||
},
|
||||
{
|
||||
"bug_fix": [
|
||||
|
||||
],
|
||||
"dev_notes": [
|
||||
|
||||
],
|
||||
"news": [
|
||||
"- Première version officielle créée par Arnaud VERGNET"
|
||||
],
|
||||
"releaseDate": "27/08/2019",
|
||||
"version": "v1.0.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
/**
|
||||
* Render json data inside a card
|
||||
*
|
||||
* @returns {*}
|
||||
*/
|
||||
getCardItemNews = ({item}: {item: VersionType}): React.Node => {
|
||||
return (
|
||||
<Card style={{ margin: 5}}>
|
||||
<Card.Title
|
||||
title={item.version}
|
||||
subtitle={item.releaseDate}
|
||||
/*
|
||||
left={(iconProps: CardTitleIconPropsType): React.Node => (
|
||||
<Avatar.Icon size={iconProps.size} icon="podium-gold"/>
|
||||
)}
|
||||
*/
|
||||
/>
|
||||
<Card.Content>
|
||||
<Title>Nouveautés</Title>
|
||||
<Text>
|
||||
{item.news.map((txt: string): string => `${txt}\n`)}
|
||||
</Text>
|
||||
<Title>Correction des bugs</Title>
|
||||
<Text>
|
||||
{item.bug_fix.map((txt: string): string => `${txt}\n`)}
|
||||
</Text>
|
||||
</Card.Content>
|
||||
</Card>
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* Extracts a key from the given item
|
||||
*
|
||||
* @param item The item to extract the key from
|
||||
* @return {string} The extracted key
|
||||
*/
|
||||
keyExtractor = (item: VersionType): string => item.version;
|
||||
|
||||
render(): React.Node {
|
||||
return (
|
||||
<View style={{padding: 5}}>
|
||||
<Text style={styles.title}>
|
||||
Version actuelle
|
||||
</Text>
|
||||
{this.getCardItemNews({item: this.text.currentVersion})}
|
||||
<Text style={styles.title}>
|
||||
Versions précédentes
|
||||
</Text>
|
||||
<FlatList
|
||||
data={this.text.previousVersions}
|
||||
keyExtractor={this.keyExtractor}
|
||||
renderItem={this.getCardItemNews}
|
||||
/>
|
||||
</View>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
export default withTheme(MarkdownRender);
|
|
@ -32,6 +32,7 @@ import EquipmentConfirmScreen from '../screens/Amicale/Equipment/EquipmentConfir
|
|||
import DashboardEditScreen from '../screens/Other/Settings/DashboardEditScreen';
|
||||
import GameStartScreen from '../screens/Game/screens/GameStartScreen';
|
||||
import ImageGalleryScreen from '../screens/Media/ImageGalleryScreen';
|
||||
import ChangelogScreen from "../screens/Other/ChangelogScreen";
|
||||
|
||||
const modalTransition =
|
||||
Platform.OS === 'ios'
|
||||
|
@ -214,6 +215,12 @@ function MainStackComponent(props: {
|
|||
BugReportScreen,
|
||||
i18n.t('screens.feedback.title'),
|
||||
)}
|
||||
{createScreenCollapsibleStack(
|
||||
'changelog',
|
||||
MainStack,
|
||||
ChangelogScreen,
|
||||
i18n.t('screens.about.changelog'),
|
||||
)}
|
||||
</MainStack.Navigator>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -98,7 +98,8 @@ class AboutScreen extends React.Component<PropsType> {
|
|||
},
|
||||
{
|
||||
onPressCallback: () => {
|
||||
openWebLink(links.changelog);
|
||||
const {navigation} = this.props;
|
||||
navigation.navigate('changelog');
|
||||
},
|
||||
icon: 'refresh',
|
||||
text: i18n.t('screens.about.changelog'),
|
||||
|
|
21
src/screens/Other/ChangelogScreen.js
Normal file
21
src/screens/Other/ChangelogScreen.js
Normal file
|
@ -0,0 +1,21 @@
|
|||
// @flow
|
||||
|
||||
import * as React from 'react';
|
||||
import {withTheme} from 'react-native-paper';
|
||||
import CollapsibleScrollView from '../../components/Collapsible/CollapsibleScrollView';
|
||||
import MarkdownRender from '../../components/Screens/MarkdownRenderScreen';
|
||||
|
||||
const url = "https://etud.insa-toulouse.fr/~leban/changelogV2.json"
|
||||
|
||||
// eslint-disable-next-line
|
||||
class ChangelogScreen extends React.Component<null> {
|
||||
render(): React.Node {
|
||||
return (
|
||||
<CollapsibleScrollView style={{padding: 5}}>
|
||||
<MarkdownRender url={url}/>
|
||||
</CollapsibleScrollView>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default withTheme(ChangelogScreen);
|
Loading…
Reference in a new issue