From aba002e538f072f17972d9eec8a68ed5ef52e5f1 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 20:24:24 +0100 Subject: [PATCH 01/15] Mobile Client: Setup action page: when no service is connected, blank page + filter available services using provider --- mobile/lib/src/views/setup_action_page.dart | 24 +++++++++++++-------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/mobile/lib/src/views/setup_action_page.dart b/mobile/lib/src/views/setup_action_page.dart index 49f006d..83e11da 100644 --- a/mobile/lib/src/views/setup_action_page.dart +++ b/mobile/lib/src/views/setup_action_page.dart @@ -3,6 +3,7 @@ import 'package:aeris/src/models/action_template.dart'; import 'package:aeris/src/aeris_api.dart'; import 'package:aeris/src/models/reaction.dart'; import 'package:aeris/src/models/trigger.dart'; +import 'package:aeris/src/providers/services_provider.dart'; import 'package:flutter/material.dart'; import 'package:aeris/src/models/action.dart' as aeris; import 'package:aeris/src/models/service.dart'; @@ -11,6 +12,7 @@ import 'package:aeris/src/widgets/aeris_card_page.dart'; import 'package:expandable/expandable.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:get_it/get_it.dart'; +import 'package:provider/provider.dart'; import 'package:skeleton_loader/skeleton_loader.dart'; ///Page to setup an action @@ -40,10 +42,8 @@ class _SetupActionPageState extends State { availableActions = GetIt.I().getActionsFor(serviceState!, widget.action); } - @override - Widget build(BuildContext context) { - - final Widget serviceDropdown = DropdownButton( + Widget serviceDropdown(List services) { + return DropdownButton( value: serviceState, elevation: 8, underline: Container(), @@ -53,7 +53,7 @@ class _SetupActionPageState extends State { availableActions = GetIt.I().getActionsFor(service!, widget.action); }); }, - items: Service.all().map>((Service service) { + items: services.map>((Service service) { return DropdownMenuItem( value: service, child: Row(children: [ @@ -67,17 +67,23 @@ class _SetupActionPageState extends State { ); }).toList(), ); + } + + @override + Widget build(BuildContext context) { var cardShape = const RoundedRectangleBorder( borderRadius: BorderRadius.all(Radius.circular(10))); return AerisCardPage( - body: Padding( + body: Consumer(builder: (context, services, _) => Padding( padding: const EdgeInsets.only(bottom: 20, left: 10, right: 10), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text(widget.action is Trigger + services.connectedServices.isEmpty + ? Container() + : Text(widget.action is Trigger ? AppLocalizations.of(context).setupTrigger : AppLocalizations.of(context).setupReaction, style: const TextStyle( @@ -98,7 +104,7 @@ class _SetupActionPageState extends State { child: Padding( padding: const EdgeInsets.all(8.0), child: Align( - alignment: Alignment.centerRight, child: serviceDropdown), + alignment: Alignment.centerRight, child: serviceDropdown(services.connectedServices)), ), ), ], @@ -155,6 +161,6 @@ class _SetupActionPageState extends State { ] ], ), - )); + ))); } } From 3642022c188ccd4a3085dfce6c564f9f3e453e11 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 21:43:39 +0100 Subject: [PATCH 02/15] Mobile Client: Translation --- mobile/lib/l10n/app_en.arb | 4 ++- mobile/lib/l10n/app_fr.arb | 4 ++- mobile/lib/src/views/setup_action_page.dart | 27 ++++++++++++++++++--- 3 files changed, 29 insertions(+), 6 deletions(-) diff --git a/mobile/lib/l10n/app_en.arb b/mobile/lib/l10n/app_en.arb index 382a4b8..3700049 100644 --- a/mobile/lib/l10n/app_en.arb +++ b/mobile/lib/l10n/app_en.arb @@ -43,5 +43,7 @@ "tryToConnect": "Try to connect", "routeToApi": "Route to API", "setupAPIRoute": "Setup API Route", - "paramInheritTip": "To inherit parameters from previous actions, type '{' in the text field and tap on the choosen parameter" + "paramInheritTip": "To inherit parameters from previous actions, type '{' in the text field and tap on the choosen parameter", + "authenticatedToNoService": "You are not authenticated to any services.", + "connectService": "Connect a service" } \ No newline at end of file diff --git a/mobile/lib/l10n/app_fr.arb b/mobile/lib/l10n/app_fr.arb index 776233e..91d44ab 100644 --- a/mobile/lib/l10n/app_fr.arb +++ b/mobile/lib/l10n/app_fr.arb @@ -43,5 +43,7 @@ "tryToConnect": "Tester la connection", "routeToApi": "Route de l'API", "setupAPIRoute": "Choisir la route de l'API", - "paramInheritTip": "Afin d'hériter de variables venant d'actions précedentes, entrez '{' dans un champ et choisissez la valeur" + "paramInheritTip": "Afin d'hériter de variables venant d'actions précedentes, entrez '{' dans un champ et choisissez la valeur", + "authenticatedToNoService": "Aucun service n'est connecté", + "connectService": "Connecter un service" } \ No newline at end of file diff --git a/mobile/lib/src/views/setup_action_page.dart b/mobile/lib/src/views/setup_action_page.dart index 83e11da..a211e51 100644 --- a/mobile/lib/src/views/setup_action_page.dart +++ b/mobile/lib/src/views/setup_action_page.dart @@ -4,6 +4,8 @@ import 'package:aeris/src/aeris_api.dart'; import 'package:aeris/src/models/reaction.dart'; import 'package:aeris/src/models/trigger.dart'; import 'package:aeris/src/providers/services_provider.dart'; +import 'package:aeris/src/views/service_page.dart'; +import 'package:aeris/src/widgets/colored_clickable_card.dart'; import 'package:flutter/material.dart'; import 'package:aeris/src/models/action.dart' as aeris; import 'package:aeris/src/models/service.dart'; @@ -80,10 +82,27 @@ class _SetupActionPageState extends State { padding: const EdgeInsets.only(bottom: 20, left: 10, right: 10), child: Column( crossAxisAlignment: CrossAxisAlignment.start, - children: [ - services.connectedServices.isEmpty - ? Container() - : Text(widget.action is Trigger + children: services.connectedServices.isEmpty ? + ([ + Text(AppLocalizations.of(context).authenticatedToNoService, + style: const TextStyle( + fontSize: 25, + ) + ), + Padding(padding: const EdgeInsets.all(30), + child: ColoredClickableCard( + color: Theme.of(context) + .colorScheme + .secondaryContainer, + text:AppLocalizations.of(context).connectService, + onTap: () => showAerisCardPage( + context, (_) => const ServicePage()).then((value) => setState((){}) //TODO check, might be useless + ) + ) + ) + ]) + : [ + Text(widget.action is Trigger ? AppLocalizations.of(context).setupTrigger : AppLocalizations.of(context).setupReaction, style: const TextStyle( From d0fdb5e37a117554774cee981890d8e5f8d9a875 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:07:06 +0100 Subject: [PATCH 03/15] Mobile Client: Pipelines: method to identify service dependencies --- mobile/lib/src/models/pipeline.dart | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mobile/lib/src/models/pipeline.dart b/mobile/lib/src/models/pipeline.dart index 8783726..afac62c 100644 --- a/mobile/lib/src/models/pipeline.dart +++ b/mobile/lib/src/models/pipeline.dart @@ -1,3 +1,4 @@ +import 'package:aeris/src/models/service.dart'; import 'package:flutter/material.dart'; import 'package:aeris/src/models/reaction.dart'; import 'package:aeris/src/models/trigger.dart'; @@ -58,4 +59,8 @@ class Pipeline { }, 'reactions': reactions.map((e) => e.toJSON()).toList() }; + + bool dependsOn(Service service) { + return service == trigger.service || reactions.any((reaction) => reaction.service == service); + } } From 371663bd6b274bbfbe31420ea8af0ca81716df4f Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:08:25 +0100 Subject: [PATCH 04/15] Mobile Client: Service Provider: available services => disconnected services --- mobile/lib/src/providers/services_provider.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/src/providers/services_provider.dart b/mobile/lib/src/providers/services_provider.dart index 36b8372..281091f 100644 --- a/mobile/lib/src/providers/services_provider.dart +++ b/mobile/lib/src/providers/services_provider.dart @@ -10,7 +10,7 @@ class ServiceProvider extends ChangeNotifier { List get connectedServices => _connectedServices; /// Get the services the user is not connected to - List get availableServices => Service.all() + List get disconnectedServices => Service.all() .where((element) => !_connectedServices.contains(element)) .toList(); From c390d0c4fc4f8d404cf55528a2d39e96b94f7dcc Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:09:45 +0100 Subject: [PATCH 05/15] Mobile Client: Warning Dialog: customize aciton button color --- mobile/lib/src/widgets/warning_dialog.dart | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/mobile/lib/src/widgets/warning_dialog.dart b/mobile/lib/src/widgets/warning_dialog.dart index 4ca34ec..f458f76 100644 --- a/mobile/lib/src/widgets/warning_dialog.dart +++ b/mobile/lib/src/widgets/warning_dialog.dart @@ -1,3 +1,4 @@ +import 'package:aeris/main.dart'; import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; @@ -11,10 +12,13 @@ class WarningDialog extends StatelessWidget { ///The action to execute once the warning was accepted final void Function() onAccept; + ///Color of the button that trigger the action + Color? actionButtonColor = Theme.of(Aeris.materialKey.currentContext!).colorScheme.error; - const WarningDialog( + WarningDialog( {Key? key, required this.message, + this.actionButtonColor, required this.onAccept, required this.warnedAction}) : super(key: key); @@ -40,7 +44,8 @@ class WarningDialog extends StatelessWidget { ), ElevatedButton( style: ElevatedButton.styleFrom( - primary: Theme.of(context).colorScheme.error), + primary: actionButtonColor), + //primary: Theme.of(context).colorScheme.error), onPressed: () => { Navigator.pop(context), onAccept(), From 7d371871f033a288f207238dadc5b4227c02f541 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:16:24 +0100 Subject: [PATCH 06/15] Mobile Client: Service Provider: available services => disconnected services --- mobile/lib/src/views/service_page.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/src/views/service_page.dart b/mobile/lib/src/views/service_page.dart index 0489442..f1f6557 100644 --- a/mobile/lib/src/views/service_page.dart +++ b/mobile/lib/src/views/service_page.dart @@ -67,7 +67,7 @@ class ServicePage extends StatelessWidget { warnedAction: AppLocalizations.of(context).disconnect)), context), ...getServiceGroup( - serviceProvider.availableServices, + serviceProvider.disconnectedServices, AppLocalizations.of(context).available, const Icon(Icons.connect_without_contact, color: Colors.green), (Service service) { From a8555ec9267e0f45e66cf5c8aeded518c954713e Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:17:34 +0100 Subject: [PATCH 07/15] Mobile Client: if enable pipeline depending on disconnected service, show dialog --- .../lib/src/views/pipeline_detail_page.dart | 29 +++++++++++++++---- 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/mobile/lib/src/views/pipeline_detail_page.dart b/mobile/lib/src/views/pipeline_detail_page.dart index 4c5aeca..12a3da5 100644 --- a/mobile/lib/src/views/pipeline_detail_page.dart +++ b/mobile/lib/src/views/pipeline_detail_page.dart @@ -1,5 +1,7 @@ import 'package:aeris/src/aeris_api.dart'; import 'package:aeris/src/providers/pipelines_provider.dart'; +import 'package:aeris/src/providers/services_provider.dart'; +import 'package:aeris/src/views/service_page.dart'; import 'package:aeris/src/views/setup_action_page.dart'; import 'package:aeris/src/widgets/action_card_popup_menu.dart'; import 'package:aeris/src/widgets/aeris_card_page.dart'; @@ -28,7 +30,8 @@ class PipelineDetailPage extends StatefulWidget { class _PipelineDetailPageState extends State { @override Widget build(BuildContext context) => - Consumer(builder: (context, provider, _) { + Consumer(builder: (context, services, _) { + return Consumer(builder: (context, provider, _) { Pipeline pipeline = widget.pipeline; final cardHeader = Row( @@ -67,11 +70,24 @@ class _PipelineDetailPageState extends State { width: 60, value: pipeline.enabled, onToggle: (value) { - setState(() { - pipeline.enabled = !pipeline.enabled; - GetIt.I().editPipeline(pipeline); - provider.sortPipelines(); - }); + if (services.disconnectedServices.any( + (service) => pipeline.dependsOn(service)) + ) { + showDialog( + context: context, + builder: (BuildContext context) => WarningDialog( + message: AppLocalizations.of(context).cantEnablePipeline, + onAccept: () => showAerisCardPage(context, (_) => const ServicePage()), + actionButtonColor: Theme.of(context).colorScheme.secondaryContainer, + warnedAction: AppLocalizations.of(context).connectService) + ); + } else { + setState(() { + pipeline.enabled = !pipeline.enabled; + GetIt.I().editPipeline(pipeline); + provider.sortPipelines(); + }); + } }, ), ), @@ -186,4 +202,5 @@ class _PipelineDetailPageState extends State { ]), )); }); + }); } From 18926b6afcfc2c50fa8926854eb3ad14b91eee5e Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:17:46 +0100 Subject: [PATCH 08/15] Mobile client: translation --- mobile/lib/l10n/app_en.arb | 3 ++- mobile/lib/l10n/app_fr.arb | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/mobile/lib/l10n/app_en.arb b/mobile/lib/l10n/app_en.arb index 3700049..2de00a6 100644 --- a/mobile/lib/l10n/app_en.arb +++ b/mobile/lib/l10n/app_en.arb @@ -45,5 +45,6 @@ "setupAPIRoute": "Setup API Route", "paramInheritTip": "To inherit parameters from previous actions, type '{' in the text field and tap on the choosen parameter", "authenticatedToNoService": "You are not authenticated to any services.", - "connectService": "Connect a service" + "connectService": "Connect service", + "cantEnablePipeline": "You can't enable this pipeline because it depends on a serce that is not connected" } \ No newline at end of file diff --git a/mobile/lib/l10n/app_fr.arb b/mobile/lib/l10n/app_fr.arb index 91d44ab..7feb1a7 100644 --- a/mobile/lib/l10n/app_fr.arb +++ b/mobile/lib/l10n/app_fr.arb @@ -45,5 +45,6 @@ "setupAPIRoute": "Choisir la route de l'API", "paramInheritTip": "Afin d'hériter de variables venant d'actions précedentes, entrez '{' dans un champ et choisissez la valeur", "authenticatedToNoService": "Aucun service n'est connecté", - "connectService": "Connecter un service" + "connectService": "Connexion aux services", + "cantEnablePipeline": "Impossible d'activer la pipeline car elle dépend d'un service qui n'est pas connecté" } \ No newline at end of file From 350ca4b23a53109a805d4294076a33ad6d371c4a Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Fri, 4 Mar 2022 22:20:17 +0100 Subject: [PATCH 09/15] Moble Client: remove comment --- mobile/lib/src/widgets/warning_dialog.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/mobile/lib/src/widgets/warning_dialog.dart b/mobile/lib/src/widgets/warning_dialog.dart index f458f76..0a69790 100644 --- a/mobile/lib/src/widgets/warning_dialog.dart +++ b/mobile/lib/src/widgets/warning_dialog.dart @@ -45,7 +45,6 @@ class WarningDialog extends StatelessWidget { ElevatedButton( style: ElevatedButton.styleFrom( primary: actionButtonColor), - //primary: Theme.of(context).colorScheme.error), onPressed: () => { Navigator.pop(context), onAccept(), From 40792349ae7da2e422dd69ce9a5ca0c913b018fa Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Sat, 5 Mar 2022 10:30:39 +0100 Subject: [PATCH 10/15] Mobile Client: API remove unused constant --- mobile/lib/src/aeris_api.dart | 3 --- 1 file changed, 3 deletions(-) diff --git a/mobile/lib/src/aeris_api.dart b/mobile/lib/src/aeris_api.dart index e89f18e..bcd73d0 100644 --- a/mobile/lib/src/aeris_api.dart +++ b/mobile/lib/src/aeris_api.dart @@ -50,9 +50,6 @@ class AerisAPI { deepLinkRoute = "$scheme://arthichaud.me"; } - /// Name of the file that contains the JWT used for Aeris' API requestd - static const String jwtFile = 'aeris_jwt.txt'; - ///ROUTES /// Registers new user in the database and connects it. Returns false if register failed Future signUpUser(String username, String password) async { From 5edfd13f3069be3fa8462c8991801500f3f1451e Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Sat, 5 Mar 2022 10:46:07 +0100 Subject: [PATCH 11/15] Mobile CLient: warning dialog: fix default action button color --- mobile/lib/src/widgets/background/animated_background.dart | 4 +++- mobile/lib/src/widgets/warning_dialog.dart | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/mobile/lib/src/widgets/background/animated_background.dart b/mobile/lib/src/widgets/background/animated_background.dart index 652da0c..f0694a8 100644 --- a/mobile/lib/src/widgets/background/animated_background.dart +++ b/mobile/lib/src/widgets/background/animated_background.dart @@ -87,7 +87,9 @@ class _AnimatedBackgroundState extends State with TickerProv }); Timer(const Duration(milliseconds: 2500), () { - topAnimController.forward(); + try { + topAnimController.forward(); + } catch (e) {} }); bottomAnimController.forward(); diff --git a/mobile/lib/src/widgets/warning_dialog.dart b/mobile/lib/src/widgets/warning_dialog.dart index 0a69790..d463291 100644 --- a/mobile/lib/src/widgets/warning_dialog.dart +++ b/mobile/lib/src/widgets/warning_dialog.dart @@ -13,7 +13,7 @@ class WarningDialog extends StatelessWidget { ///The action to execute once the warning was accepted final void Function() onAccept; ///Color of the button that trigger the action - Color? actionButtonColor = Theme.of(Aeris.materialKey.currentContext!).colorScheme.error; + Color? actionButtonColor; WarningDialog( {Key? key, @@ -21,7 +21,9 @@ class WarningDialog extends StatelessWidget { this.actionButtonColor, required this.onAccept, required this.warnedAction}) - : super(key: key); + : super(key: key) { + actionButtonColor ??= Theme.of(Aeris.materialKey.currentContext!).colorScheme.error; + } @override Widget build(BuildContext context) { From 03f237926b61b995a42824d8ac16450a795586f4 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Sat, 5 Mar 2022 14:40:27 +0100 Subject: [PATCH 12/15] Mobile Client: detail page: fix condition to show alert dialog --- mobile/lib/src/aeris_api.dart | 11 +++++++++-- mobile/lib/src/views/pipeline_detail_page.dart | 2 +- mobile/lib/src/widgets/warning_dialog.dart | 13 +++++-------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/mobile/lib/src/aeris_api.dart b/mobile/lib/src/aeris_api.dart index bcd73d0..1d04dd0 100644 --- a/mobile/lib/src/aeris_api.dart +++ b/mobile/lib/src/aeris_api.dart @@ -146,8 +146,15 @@ class AerisAPI { var res = await _requestAPI('/workflows', AerisAPIRequestType.get, null); if (res.ok == false) return []; final List body = jsonDecode(res.body); - - return body.map((e) => Pipeline.fromJSON(Map.from(e))).toList(); + var decodedList = body.map((e) => Pipeline.fromJSON(Map.from(e))).toList(); + decodedList.add( + Pipeline(id: 0, name: "My Dummy", triggerCount: 0, enabled: true, trigger: + Trigger(name: "Trigger name", displayName: "Trigger Display", service: Service.discord(), parameters: [for (var i = 0; i < 3; i++) ActionParameter(name: "para$i", value: "value$i", description: "desc$i")] + ), reactions: [ + Reaction(service: const Service.anilist(), name: "Reaction name", displayName: "Reaction display", parameters: [for (var i = 0; i < 3; i++) ActionParameter(name: "para$i", value: "value$i", description: "desc$i")]) + ]) + ); + return decodedList; } /// Fetch the services the user is authenticated to diff --git a/mobile/lib/src/views/pipeline_detail_page.dart b/mobile/lib/src/views/pipeline_detail_page.dart index c15d7ba..b08c08e 100644 --- a/mobile/lib/src/views/pipeline_detail_page.dart +++ b/mobile/lib/src/views/pipeline_detail_page.dart @@ -70,7 +70,7 @@ class _PipelineDetailPageState extends State { width: 60, value: pipeline.enabled, onToggle: (value) { - if (services.disconnectedServices.any( + if (!pipeline.enabled && services.disconnectedServices.any( (service) => pipeline.dependsOn(service)) ) { showDialog( diff --git a/mobile/lib/src/widgets/warning_dialog.dart b/mobile/lib/src/widgets/warning_dialog.dart index d463291..3289a3c 100644 --- a/mobile/lib/src/widgets/warning_dialog.dart +++ b/mobile/lib/src/widgets/warning_dialog.dart @@ -34,17 +34,16 @@ class WarningDialog extends StatelessWidget { ) ), content: Text(message), + actionsAlignment: MainAxisAlignment.spaceEvenly, + actionsOverflowDirection: VerticalDirection.up, actions: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - ElevatedButton( + ElevatedButton( style: ElevatedButton.styleFrom( primary: Theme.of(context).colorScheme.primaryContainer), onPressed: () => Navigator.pop(context), child: Text(AppLocalizations.of(context).cancel), ), - ElevatedButton( + ElevatedButton( style: ElevatedButton.styleFrom( primary: actionButtonColor), onPressed: () => { @@ -53,8 +52,6 @@ class WarningDialog extends StatelessWidget { }, child: Text(warnedAction) ) - ], - ), - ]); + ]); } } From 1401e5e68f334ef929ad44664682603a8e1be271 Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Sat, 5 Mar 2022 14:40:35 +0100 Subject: [PATCH 13/15] Mobile Client: detail page: fix condition to show alert dialog --- docker-compose.yml | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index ca694be..feedd51 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,22 +10,22 @@ services: - "${POSTGRES_PORT}:5432" volumes: - "./api/sql/dump.sql:/docker-entrypoint-initdb.d/dump.sql" - #mobile: - # build: ./mobile - # volumes: - # - apk:/dist - #front: - # build: - # context: ./web-app - # dockerfile: Dockerfile - # args: - # - API_ROUTE=/api - # ports: - # - "8081:80" - # depends_on: - # - "mobile" - # volumes: - # - apk:/dist + mobile: + build: ./mobile + volumes: + - apk:/dist + front: + build: + context: ./web-app + dockerfile: Dockerfile + args: + - API_ROUTE=/api + ports: + - "8081:80" + depends_on: + - "mobile" + volumes: + - apk:/dist api: build: ./api ports: From b79d1ba798094861c77baca5c0fae4835f37d95d Mon Sep 17 00:00:00 2001 From: Arthi-chaud Date: Sat, 5 Mar 2022 14:42:08 +0100 Subject: [PATCH 14/15] Mobile Client: remove dummy data --- mobile/lib/src/aeris_api.dart | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/mobile/lib/src/aeris_api.dart b/mobile/lib/src/aeris_api.dart index 1d04dd0..bcd73d0 100644 --- a/mobile/lib/src/aeris_api.dart +++ b/mobile/lib/src/aeris_api.dart @@ -146,15 +146,8 @@ class AerisAPI { var res = await _requestAPI('/workflows', AerisAPIRequestType.get, null); if (res.ok == false) return []; final List body = jsonDecode(res.body); - var decodedList = body.map((e) => Pipeline.fromJSON(Map.from(e))).toList(); - decodedList.add( - Pipeline(id: 0, name: "My Dummy", triggerCount: 0, enabled: true, trigger: - Trigger(name: "Trigger name", displayName: "Trigger Display", service: Service.discord(), parameters: [for (var i = 0; i < 3; i++) ActionParameter(name: "para$i", value: "value$i", description: "desc$i")] - ), reactions: [ - Reaction(service: const Service.anilist(), name: "Reaction name", displayName: "Reaction display", parameters: [for (var i = 0; i < 3; i++) ActionParameter(name: "para$i", value: "value$i", description: "desc$i")]) - ]) - ); - return decodedList; + + return body.map((e) => Pipeline.fromJSON(Map.from(e))).toList(); } /// Fetch the services the user is authenticated to From 0b886ee4e5d0b9932a952179ace17e7a783114c5 Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Sat, 5 Mar 2022 15:48:40 +0100 Subject: [PATCH 15/15] Update mobile/lib/l10n/app_en.arb --- mobile/lib/l10n/app_en.arb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/l10n/app_en.arb b/mobile/lib/l10n/app_en.arb index 2de00a6..4c16f2e 100644 --- a/mobile/lib/l10n/app_en.arb +++ b/mobile/lib/l10n/app_en.arb @@ -46,5 +46,5 @@ "paramInheritTip": "To inherit parameters from previous actions, type '{' in the text field and tap on the choosen parameter", "authenticatedToNoService": "You are not authenticated to any services.", "connectService": "Connect service", - "cantEnablePipeline": "You can't enable this pipeline because it depends on a serce that is not connected" + "cantEnablePipeline": "You can't enable this pipeline because it depends on a service that is not connected" } \ No newline at end of file