From b31d35a0f7c85fe143e30db9109de1750f1c0ab5 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Mon, 18 Sep 2023 13:16:03 -0400 Subject: [PATCH 001/103] add App component; use BottomNavigation for tabs Instead of using Ionic's tabbing implementation, we're going to use `BottomNavigation` from RN Paper, included in a central App component. This App component will have an AppContext, which can include any app-wide variables/functions the tabs need to share, including the loaded dynamic config - this way we can just load it once and use it everywhere. So App.tsx is replacing main.html, as well as the logic that was in MainCtrl. The metrics tab is only shown in 'MULTILABEL' configurations (same as the implementation was in MainCtrl). Onboarding hasn't been implemented yet; so there is a placeholder for it right now --- www/i18n/en.json | 9 ++-- www/js/App.tsx | 63 ++++++++++++++++++++++ www/js/control/ProfileSettings.jsx | 2 +- www/js/main.js | 76 +++------------------------ www/js/metrics/MetricsTab.tsx | 2 +- www/js/onboarding/OnboardingStack.tsx | 17 ++++++ www/templates/main.html | 26 --------- 7 files changed, 91 insertions(+), 104 deletions(-) create mode 100644 www/js/App.tsx create mode 100644 www/js/onboarding/OnboardingStack.tsx delete mode 100644 www/templates/main.html diff --git a/www/i18n/en.json b/www/i18n/en.json index da5fc66d0..6cc211804 100644 --- a/www/i18n/en.json +++ b/www/i18n/en.json @@ -12,7 +12,7 @@ }, "control":{ - "profile": "Profile", + "profile-tab": "Profile", "edit-demographics": "Edit Demographics", "tracking": "Tracking", "app-status": "App Status", @@ -73,6 +73,7 @@ }, "metrics":{ + "dashboard-tab": "Dashboard", "cancel": "Cancel", "confirm": "Confirm", "get": "Get", @@ -112,6 +113,7 @@ }, "diary": { + "label-tab": "Label", "distance-in-time": "{{distance}} {{distsuffix}} in {{time}}", "distance": "Distance", "time": "Time", @@ -152,7 +154,6 @@ "user-age": "Age", "main-metrics":{ - "dashboard": "Dashboard", "summary": "My Summary", "chart": "Chart", "change-data": "Change dates:", @@ -198,10 +199,6 @@ "footprint-label": "Footprint (kg CO₂)" }, - "main-inf-scroll" : { - "tab": "Label" - }, - "details":{ "speed": "Speed", "time": "Time" diff --git a/www/js/App.tsx b/www/js/App.tsx new file mode 100644 index 000000000..ea22cf20d --- /dev/null +++ b/www/js/App.tsx @@ -0,0 +1,63 @@ +import React, { useState, createContext, useMemo } from 'react'; +import { angularize } from './angular-react-helper'; +import { BottomNavigation, Button, useTheme } from 'react-native-paper'; +import { useTranslation } from 'react-i18next'; +import LabelTab from './diary/LabelTab'; +import MetricsTab from './metrics/MetricsTab'; +import ProfileSettings from './control/ProfileSettings'; +import useAppConfig from './useAppConfig'; +import OnboardingStack from './onboarding/OnboardingStack'; + +const defaultRoutes = (t) => [ + { key: 'label', title: t('diary.label-tab'), focusedIcon: 'check-bold', unfocusedIcon: 'check-outline' }, + { key: 'metrics', title: t('metrics.dashboard-tab'), focusedIcon: 'chart-box', unfocusedIcon: 'chart-box-outline' }, + { key: 'control', title: t('control.profile-tab'), focusedIcon: 'account', unfocusedIcon: 'account-outline' }, +]; + +export const AppContext = createContext({finishedOnboarding: false}); + +const App = () => { + const [index, setIndex] = useState(0); + const [finishedOnboarding, setFinishedOnboarding] = useState(false); + const { appConfig, loading } = useAppConfig(); + const { colors } = useTheme(); + const { t } = useTranslation(); + + const routes = useMemo(() => { + const showMetrics = appConfig?.survey_info?.['trip-labels'] == 'MULTILABEL'; + return showMetrics ? defaultRoutes(t) : defaultRoutes(t).filter(r => r.key != 'metrics'); + }, [appConfig, t]); + + const renderScene = BottomNavigation.SceneMap({ + label: LabelTab, + metrics: MetricsTab, + control: ProfileSettings, + }); + + const appContextValue = { + appConfig, + loading, + finishedOnboarding, + setFinishedOnboarding, + } + + return (<> + + {finishedOnboarding ? + + : + + } + + ); +} + +angularize(App, 'App', 'emission.app'); +export default App; diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index dcbedbd78..3de05e4e4 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -369,7 +369,7 @@ const ProfileSettings = () => { return ( <> - + {t('control.log-out')} setLogoutVis(true)}> diff --git a/www/js/main.js b/www/js/main.js index bcee2e6ee..1a6f4eae9 100644 --- a/www/js/main.js +++ b/www/js/main.js @@ -1,53 +1,22 @@ 'use strict'; import angular from 'angular'; - -import MetricsTab from './metrics/MetricsTab'; +import App from './app'; angular.module('emission.main', ['emission.main.diary', 'emission.main.control', 'emission.main.metrics.factory', 'emission.main.metrics.mappings', - 'emission.main.recent', 'emission.config.dynamic', 'emission.services', 'emission.services.upload', - MetricsTab.module]) + App.module]) -.config(function($stateProvider, $ionicConfigProvider, $urlRouterProvider) { - $stateProvider - // setup an abstract state for the tabs directive - .state('root.main', { +.config(function($stateProvider) { + $stateProvider.state('root.main', { url: '/main', - abstract: true, - templateUrl: 'templates/main.html', - controller: 'MainCtrl' - }) - - .state('root.main.metrics', { - url: '/metrics', - views: { - 'main-metrics': { - template: ``, - } - } - }) - - .state('root.main.control', { - url: '/control', - params: { - launchAppStatusModal: false - }, - views: { - 'main-control': { - template: ``, - controller: 'ControlCtrl' - } - } - }) - - $ionicConfigProvider.tabs.style('standard') - $ionicConfigProvider.tabs.position('bottom'); + template: `` + }); }) .controller('appCtrl', function($scope, $ionicModal, $timeout) { @@ -61,37 +30,4 @@ angular.module('emission.main', ['emission.main.diary', "Unable to open screen NativeSettings because of err "+err); }); } -}) - -.controller('MainCtrl', function($scope, $state, $rootScope, $ionicPlatform, DynamicConfig) { - // Currently this is blank since it is basically a placeholder for the - // three screens. But we can totally add hooks here if we want. It is the - // controller for all the screens because none of them do anything for now. - - moment.locale(i18next.resolvedLanguage); - - $scope.tabsCustomClass = function() { - return "tabs-icon-top tabs-custom"; - } - - $ionicPlatform.ready().then(function() { - DynamicConfig.configReady().then((newConfig) => { - $scope.dCfg = newConfig; - $scope.showMetrics = newConfig.survey_info['trip-labels'] == 'MULTILABEL'; - console.log("screen-select: showMetrics = "+$scope.showMetrics);; - console.log("screen-select: in dynamic config load, tabs list is ", $('.tab-item')); - }); - }); - - $scope.$on('$ionicView.enter', function(ev) { - console.log("screen-select: after view enter, tabs list is ", $('.tab-item')); - const labelEl = $('.tab-item[icon="ion-checkmark-round"]') - const diaryEl = $('.tab-item[icon="ion-map"]') - const dashboardEl = $('.tab-item[icon="ion-ios-analytics"]') - console.log("screen-select: label ",labelEl," diary ",diaryEl," dashboardEl" ,dashboardEl); - // If either these don't exist, we will get an empty array. - // preceding or succeeding with an empty array is a NOP - labelEl.before(diaryEl); - labelEl.after(dashboardEl); - }); }); diff --git a/www/js/metrics/MetricsTab.tsx b/www/js/metrics/MetricsTab.tsx index 25020b435..50aebb5ad 100644 --- a/www/js/metrics/MetricsTab.tsx +++ b/www/js/metrics/MetricsTab.tsx @@ -79,7 +79,7 @@ const MetricsTab = () => { return (<> - + diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx new file mode 100644 index 000000000..8f2e52f69 --- /dev/null +++ b/www/js/onboarding/OnboardingStack.tsx @@ -0,0 +1,17 @@ +import React, { useContext } from "react"; +import { AppContext } from "../app"; +import { Button, Text } from "react-native-paper"; +import { SafeAreaView } from "react-native-safe-area-context"; + +const OnboardingStack = () => { + const { setFinishedOnboarding } = useContext(AppContext); + + return ( + + (Onboarding Placeholder) + + + ); +} + +export default OnboardingStack diff --git a/www/templates/main.html b/www/templates/main.html deleted file mode 100644 index c3de4adcb..000000000 --- a/www/templates/main.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - From 8c7bf559e810d3507b2596a445dc91f6226fa8ec Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Mon, 18 Sep 2023 13:58:11 -0400 Subject: [PATCH 002/103] make primaryContainer a lighter blue; use for tabs By default, the active tab at the bottom of the screen shows in secondaryContainer color, which for us is a light yellow/orange. For this app, it makes more sense for this to be light blue. primaryContainer is close, but it can be lightened a bit more to match the lightness of secondaryContainer. Because we use primaryContainer for TimestampBadges, these now sort of blend into the background because they're lighter. A better idea for this is to give an small outline that is 'primary' color. If we replace the Badge component with a View we can add this outline, and we also don't have to worry about the warnings that we got before with the Badge component. Also added some comments describing the style, color/height overrides for BottomNavigation --- www/js/App.tsx | 7 +++++-- www/js/appTheme.ts | 2 +- www/js/diary/cards/TimestampBadge.tsx | 16 ++++++++-------- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index ea22cf20d..b09a0a830 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -48,10 +48,13 @@ const App = () => { navigationState={{ index, routes }} onIndexChange={setIndex} renderScene={renderScene} + // Place at bottom, color of 'surface' (white) by default, and 68px tall (default was 80) safeAreaInsets={{ bottom: 0 }} style={{ backgroundColor: colors.surface }} - barStyle={{ height: 70, justifyContent: 'center', backgroundColor: 'rgba(0,0,0,0)' }} - /> + barStyle={{ height: 68, justifyContent: 'center', backgroundColor: 'rgba(0,0,0,0)' }} + // BottomNavigation uses secondaryContainer color for the background, but we want primaryContainer + // (light blue), so we override here. + theme={{ colors: { secondaryContainer: colors.primaryContainer } }} /> : } diff --git a/www/js/appTheme.ts b/www/js/appTheme.ts index 5f47f00b1..a8660e811 100644 --- a/www/js/appTheme.ts +++ b/www/js/appTheme.ts @@ -8,7 +8,7 @@ const AppTheme = { colors: { ...DefaultTheme.colors, primary: '#0080b9', // lch(50% 50 250) - primaryContainer: '#90ceff', // lch(80% 40 250) + primaryContainer: '#c0e2ff', // lch(88% 30 250) onPrimaryContainer: '#001e30', // lch(10% 50 250) secondary: '#c08331', // lch(60% 55 70) secondaryContainer: '#fcefda', // lch(95% 12 80) diff --git a/www/js/diary/cards/TimestampBadge.tsx b/www/js/diary/cards/TimestampBadge.tsx index da753ec76..0e8903ec5 100644 --- a/www/js/diary/cards/TimestampBadge.tsx +++ b/www/js/diary/cards/TimestampBadge.tsx @@ -2,10 +2,10 @@ Used in the label screen, on the trip, place, and/or untracked cards */ import React from "react"; -import { StyleSheet } from "react-native"; -import { Badge, BadgeProps, Text, useTheme } from "react-native-paper"; +import { View, StyleSheet } from "react-native"; +import { Text, useTheme } from "react-native-paper"; -type Props = BadgeProps & { +type Props = { lightBg: boolean, time: string, date?: string, @@ -16,10 +16,7 @@ const TimestampBadge = ({ lightBg, time, date, ...otherProps }: Props) => { const textColor = lightBg ? 'black' : 'white'; return ( - // @ts-ignore Technically, Badge only accepts a string or number as its child, but we want - // to have different bold & light text styles for the time and date, so we pass in Text components. - // It works fine with Text components inside, so let's ignore the type error. - + {time} @@ -27,13 +24,16 @@ const TimestampBadge = ({ lightBg, time, date, ...otherProps }: Props) => { date && {`\xa0(${date})` /* date shown in parentheses with space before */} } - + ); }; const styles = StyleSheet.create({ badge: { flex: 1, + flexDirection: 'row', paddingHorizontal: 6, + borderWidth: 1, + borderRadius: 8, fontSize: 12.5, display: 'flex', margin: 'auto', From 452b37cfbc1403c00461375c146b0490361df8ed Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Mon, 18 Sep 2023 16:16:30 -0600 Subject: [PATCH 003/103] Privacy Policy -- split text from container to increase reusability of the privacy policy element, we need flexibility of how the component is formatted, achieve this by having the title and scrollview (with all the text) as one component, and the container as another. Chose to keep buttons with the container -- this allows for custom options between profile and onboarding -- policy is view only and can be "closed" from profile, but must be explicitly accepted or rejected in onboarding --- www/js/control/PrivacyPolicyModal.tsx | 178 +------------------------ www/js/join/PrivacyPolicy.tsx | 184 ++++++++++++++++++++++++++ 2 files changed, 191 insertions(+), 171 deletions(-) create mode 100644 www/js/join/PrivacyPolicy.tsx diff --git a/www/js/control/PrivacyPolicyModal.tsx b/www/js/control/PrivacyPolicyModal.tsx index 7451581a6..f4787f6c4 100644 --- a/www/js/control/PrivacyPolicyModal.tsx +++ b/www/js/control/PrivacyPolicyModal.tsx @@ -1,39 +1,12 @@ -import React, { useMemo } from "react"; -import { Modal, useWindowDimensions, ScrollView, Linking, StyleSheet, Text } from "react-native"; -import { Dialog, Button, useTheme } from 'react-native-paper'; +import React from "react"; +import { Modal, useWindowDimensions } from "react-native"; +import { Dialog, useTheme, Button } from 'react-native-paper'; import { useTranslation } from "react-i18next"; -import useAppConfig from "../useAppConfig"; -import i18next from "i18next"; +import PrivacyPolicy from "../join/PrivacyPolicy"; const PrivacyPolicyModal = ({ privacyVis, setPrivacyVis, dialogStyle }) => { - const { t } = useTranslation(); const { height: windowHeight } = useWindowDimensions(); - const { colors } = useTheme(); - const { appConfig, loading } = useAppConfig(); - - const getTemplateText = function(configObject) { - if (configObject && (configObject.name)) { - return configObject.intro.translated_text[i18next.language]; - } - } - - let opCodeText; - if(appConfig?.opcode?.autogen) { - opCodeText = {t('consent-text.opcode.autogen')}; - - } else { - opCodeText = {t('consent-text.opcode.not-autogen')}; - } - - let yourRightsText; - if(appConfig?.intro?.app_required) { - yourRightsText = {t('consent-text.rights.app-required', {program_admin_contact: appConfig?.intro?.program_admin_contact})}; - - } else { - yourRightsText = {t('consent-text.rights.app-not-required', {program_or_study: appConfig?.intro?.program_or_study})}; - } - - const templateText = useMemo(() => getTemplateText(appConfig), [appConfig]); + const { t } = useTranslation(); return ( <> @@ -41,155 +14,18 @@ const PrivacyPolicyModal = ({ privacyVis, setPrivacyVis, dialogStyle }) => { setPrivacyVis(false)} style={dialogStyle}> - {t('consent-text.title')} - - {t('consent-text.introduction.header')} - {templateText?.short_textual_description} - {'\n'} - {t('consent-text.introduction.what-is-openpath')} - {'\n'} - {t('consent-text.introduction.what-is-NREL', {program_or_study: appConfig?.intro?.program_or_study})} - {'\n'} - {t('consent-text.introduction.if-disagree')} - {'\n'} - - {t('consent-text.why.header')} - {templateText?.why_we_collect} - {'\n'} - - {t('consent-text.what.header')} - {t('consent-text.what.no-pii')} - {'\n'} - {t('consent-text.what.phone-sensor')} - {'\n'} - {t('consent-text.what.labeling')} - {'\n'} - {t('consent-text.what.demographics')} - {'\n'} - {t('consent-text.what.on-nrel-site')} - {/* Linking is broken, look into enabling after migration - - {t('consent-text.what.open-source-data')} - { - Linking.openURL('https://github.com/e-mission/e-mission-data-collection.git'); - }}> - {' '}https://github.com/e-mission/e-mission-data-collection.git{' '} - - {t('consent-text.what.open-source-analysis')} - { - Linking.openURL('https://github.com/e-mission/e-mission-server.git'); - }}> - {' '}https://github.com/e-mission/e-mission-server.git{' '} - - {t('consent-text.what.open-source-dashboard')} - { - Linking.openURL('https://github.com/e-mission/em-public-dashboard.git'); - }}> - {' '}https://github.com/e-mission/em-public-dashboard.git{' '} - - */} - {'\n'} - - {t('consent-text.opcode.header')} - {opCodeText} - {'\n'} - - {t('consent-text.who-sees.header')} - {t('consent-text.who-sees.public-dash')} - {'\n'} - {t('consent-text.who-sees.individual-info')} - {'\n'} - {t('consent-text.who-sees.program-admins', { - deployment_partner_name: appConfig?.intro?.deployment_partner_name, - raw_data_use: templateText?.raw_data_use})} - {t('consent-text.who-sees.nrel-devs')} - {'\n'} - {t('consent-text.who-sees.TSDC-info')} - {/* Linking is broken, look into enabling after migration - { - Linking.openURL('https://nrel.gov/tsdc'); - }}> - {t('consent-text.who-sees.on-website')} - - {t('consent-text.who-sees.and-in')} - { - Linking.openURL('https://www.sciencedirect.com/science/article/pii/S2352146515002999'); - }}> - {t('consent-text.who-sees.this-pub')} - - {t('consent-text.who-sees.and')} - { - Linking.openURL('https://www.nrel.gov/docs/fy18osti/70723.pdf'); - }}> - {t('consent-text.who-sees.fact-sheet')} - */} - {t('consent-text.who-sees.on-nrel-site')} - - {'\n'} - - {t('consent-text.rights.header')} - {yourRightsText} - {'\n'} - {t('consent-text.rights.destroy-data-pt1')} - {/* Linking is broken, look into enabling after migration - { - Linking.openURL("mailto:k.shankari@nrel.gov"); - }}> - k.shankari@nrel.gov - */} - (k.shankari@nrel.gov) - {t('consent-text.rights.destroy-data-pt2')} - - {'\n'} - - {t('consent-text.questions.header')} - {t('consent-text.questions.for-questions', {program_admin_contact: appConfig?.intro?.program_admin_contact})} - {'\n'} - - {t('consent-text.consent.header')} - {t('consent-text.consent.press-button-to-consent', {program_or_study: appConfig?.intro?.program_or_study})} - - + - - ) } -const styles = StyleSheet.create({ - hyperlinkStyle: (linkColor) => ({ - color: linkColor - }), - text: { - fontSize: 14 - }, - header: { - fontWeight: "bold", - fontSize: 18 - } - }); - export default PrivacyPolicyModal; \ No newline at end of file diff --git a/www/js/join/PrivacyPolicy.tsx b/www/js/join/PrivacyPolicy.tsx new file mode 100644 index 000000000..9b6499f6d --- /dev/null +++ b/www/js/join/PrivacyPolicy.tsx @@ -0,0 +1,184 @@ +import React, { useMemo } from "react"; +import { ScrollView, StyleSheet, Text } from "react-native"; +import { useTheme } from 'react-native-paper'; +import { useTranslation } from "react-i18next"; +import useAppConfig from "../useAppConfig"; +import i18next from "i18next"; + +const PrivacyPolicyModal = () => { + const { t } = useTranslation(); + const { colors } = useTheme(); + const { appConfig, loading } = useAppConfig(); + + const getTemplateText = function(configObject) { + if (configObject && (configObject.name)) { + return configObject.intro.translated_text[i18next.language]; + } + } + + let opCodeText; + if(appConfig?.opcode?.autogen) { + opCodeText = {t('consent-text.opcode.autogen')}; + + } else { + opCodeText = {t('consent-text.opcode.not-autogen')}; + } + + let yourRightsText; + if(appConfig?.intro?.app_required) { + yourRightsText = {t('consent-text.rights.app-required', {program_admin_contact: appConfig?.intro?.program_admin_contact})}; + + } else { + yourRightsText = {t('consent-text.rights.app-not-required', {program_or_study: appConfig?.intro?.program_or_study})}; + } + + const templateText = useMemo(() => getTemplateText(appConfig), [appConfig]); + + return ( + <> + {t('consent-text.title')} + + {t('consent-text.introduction.header')} + {templateText?.short_textual_description} + {'\n'} + {t('consent-text.introduction.what-is-openpath')} + {'\n'} + {t('consent-text.introduction.what-is-NREL', {program_or_study: appConfig?.intro?.program_or_study})} + {'\n'} + {t('consent-text.introduction.if-disagree')} + {'\n'} + + {t('consent-text.why.header')} + {templateText?.why_we_collect} + {'\n'} + + {t('consent-text.what.header')} + {t('consent-text.what.no-pii')} + {'\n'} + {t('consent-text.what.phone-sensor')} + {'\n'} + {t('consent-text.what.labeling')} + {'\n'} + {t('consent-text.what.demographics')} + {'\n'} + {t('consent-text.what.on-nrel-site')} + {/* Linking is broken, look into enabling after migration + + {t('consent-text.what.open-source-data')} + { + Linking.openURL('https://github.com/e-mission/e-mission-data-collection.git'); + }}> + {' '}https://github.com/e-mission/e-mission-data-collection.git{' '} + + {t('consent-text.what.open-source-analysis')} + { + Linking.openURL('https://github.com/e-mission/e-mission-server.git'); + }}> + {' '}https://github.com/e-mission/e-mission-server.git{' '} + + {t('consent-text.what.open-source-dashboard')} + { + Linking.openURL('https://github.com/e-mission/em-public-dashboard.git'); + }}> + {' '}https://github.com/e-mission/em-public-dashboard.git{' '} + + */} + {'\n'} + + {t('consent-text.opcode.header')} + {opCodeText} + {'\n'} + + {t('consent-text.who-sees.header')} + {t('consent-text.who-sees.public-dash')} + {'\n'} + {t('consent-text.who-sees.individual-info')} + {'\n'} + {t('consent-text.who-sees.program-admins', { + deployment_partner_name: appConfig?.intro?.deployment_partner_name, + raw_data_use: templateText?.raw_data_use})} + {t('consent-text.who-sees.nrel-devs')} + {'\n'} + {t('consent-text.who-sees.TSDC-info')} + {/* Linking is broken, look into enabling after migration + { + Linking.openURL('https://nrel.gov/tsdc'); + }}> + {t('consent-text.who-sees.on-website')} + + {t('consent-text.who-sees.and-in')} + { + Linking.openURL('https://www.sciencedirect.com/science/article/pii/S2352146515002999'); + }}> + {t('consent-text.who-sees.this-pub')} + + {t('consent-text.who-sees.and')} + { + Linking.openURL('https://www.nrel.gov/docs/fy18osti/70723.pdf'); + }}> + {t('consent-text.who-sees.fact-sheet')} + */} + {t('consent-text.who-sees.on-nrel-site')} + + {'\n'} + + {t('consent-text.rights.header')} + {yourRightsText} + {'\n'} + {t('consent-text.rights.destroy-data-pt1')} + {/* Linking is broken, look into enabling after migration + { + Linking.openURL("mailto:k.shankari@nrel.gov"); + }}> + k.shankari@nrel.gov + */} + (k.shankari@nrel.gov) + {t('consent-text.rights.destroy-data-pt2')} + + {'\n'} + + {t('consent-text.questions.header')} + {t('consent-text.questions.for-questions', {program_admin_contact: appConfig?.intro?.program_admin_contact})} + {'\n'} + + {t('consent-text.consent.header')} + {t('consent-text.consent.press-button-to-consent', {program_or_study: appConfig?.intro?.program_or_study})} + + + + ) +} + +const styles = StyleSheet.create({ + hyperlinkStyle: (linkColor) => ({ + color: linkColor + }), + text: { + fontSize: 14 + }, + header: { + fontWeight: "bold", + fontSize: 18 + }, + title: { + fontWeight: "bold", + fontSize: 22, + paddingBottom: 10 + } + }); + +export default PrivacyPolicyModal; \ No newline at end of file From 816c8d80182fb296056eb5c55dfeb1c22486e1b1 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Tue, 19 Sep 2023 08:43:40 -0600 Subject: [PATCH 004/103] rename AppStatusModal in an attempt to keep the blame, I'm renaming and moving this to then cut it down to just the controls, and will re-establish the modal to hold the controls elsewhere --- .../AppStatusModal.tsx => appstatus/PermissionsControls.tsx} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename www/js/{control/AppStatusModal.tsx => appstatus/PermissionsControls.tsx} (100%) diff --git a/www/js/control/AppStatusModal.tsx b/www/js/appstatus/PermissionsControls.tsx similarity index 100% rename from www/js/control/AppStatusModal.tsx rename to www/js/appstatus/PermissionsControls.tsx From 1b6341cc05668cc2eb7a58cfdbdfe0a02d54a2d1 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Tue, 19 Sep 2023 09:08:32 -0600 Subject: [PATCH 005/103] split permissionsControls from AppStatus Modal to increase flexibility, we need to separate the permissions modal from it's contents. SettingsScope is also no longer a needed argument --- www/js/appstatus/PermissionsControls.tsx | 97 ++++++++++++------------ www/js/control/AppStatusModal.tsx | 25 ++++++ www/js/control/ProfileSettings.jsx | 2 +- 3 files changed, 74 insertions(+), 50 deletions(-) create mode 100644 www/js/control/AppStatusModal.tsx diff --git a/www/js/appstatus/PermissionsControls.tsx b/www/js/appstatus/PermissionsControls.tsx index 64c63f720..45f55f527 100644 --- a/www/js/appstatus/PermissionsControls.tsx +++ b/www/js/appstatus/PermissionsControls.tsx @@ -1,21 +1,19 @@ //component to view and manage permission settings import React, { useState, useEffect, useMemo } from "react"; -import { Modal, useWindowDimensions, ScrollView } from "react-native"; +import { StyleSheet, useWindowDimensions, ScrollView, View } from "react-native"; import { Dialog, Button, Text, useTheme } from 'react-native-paper'; import { useTranslation } from "react-i18next"; -import PermissionItem from "../appstatus/PermissionItem"; +import PermissionItem from "./PermissionItem"; import useAppConfig from "../useAppConfig"; import useAppStateChange from "../useAppStateChange"; -import ExplainPermissions from "../appstatus/ExplainPermissions"; -import AlertBar from "./AlertBar"; +import ExplainPermissions from "./ExplainPermissions"; +import AlertBar from "../control/AlertBar"; -const AppStatusModal = ({permitVis, setPermitVis, dialogStyle, settingsScope}) => { +const PermissionsControls = ({ permitVis, setPermitVis }) => { const { t } = useTranslation(); const { colors } = useTheme(); const { appConfig, loading } = useAppConfig(); - console.log("settings scope in app status modal", settingsScope); - const { height: windowHeight } = useWindowDimensions(); const [osver, setOsver] = useState(0); const [platform, setPlatform] = useState(""); @@ -369,12 +367,6 @@ const AppStatusModal = ({permitVis, setPermitVis, dialogStyle, settingsScope}) = refreshAllChecks(); }); - //refresh when recompute message is broadcast - settingsScope.$on("recomputeAppStatus", function() { - console.log("PERMISSION CHECK: recomputing state"); - refreshAllChecks(); - }); - //load when ready useEffect(() => { if (appConfig && window['device']?.platform) { @@ -409,45 +401,52 @@ const AppStatusModal = ({permitVis, setPermitVis, dialogStyle, settingsScope}) = return ( <> - setPermitVis(false)} transparent={true}> - setPermitVis(false)} - style={dialogStyle}> - {t('consent.permissions')} - - - {t('intro.appstatus.overall-description')} - - - {checkList?.map((lc) => - - - )} - - - - - - - - + {t('consent.permissions')} + + {t('intro.appstatus.overall-description')} + + + {checkList?.map((lc) => + + + )} + + + + + ) } -export default AppStatusModal; \ No newline at end of file +const styles = StyleSheet.create({ + text: { + fontSize: 14 + }, + header: { + fontWeight: "bold", + fontSize: 18 + }, + title: { + fontWeight: "bold", + fontSize: 22, + paddingBottom: 10 + } + }); + +export default PermissionsControls; \ No newline at end of file diff --git a/www/js/control/AppStatusModal.tsx b/www/js/control/AppStatusModal.tsx new file mode 100644 index 000000000..fad2424e6 --- /dev/null +++ b/www/js/control/AppStatusModal.tsx @@ -0,0 +1,25 @@ +import React, { useState, useEffect, useMemo } from "react"; +import { Modal, useWindowDimensions, ScrollView, View } from "react-native"; +import { Dialog, Button, Text, useTheme } from 'react-native-paper'; +import PermissionsControls from "../appstatus/PermissionsControls"; +//TODO -- import settings styles for dialog + +const AppStatusModal = ({permitVis, setPermitVis, dialogStyle}) => { + const {colors} = useTheme(); + const { height: windowHeight } = useWindowDimensions(); + + return ( + setPermitVis(false)} transparent={true}> + setPermitVis(false)} + style={dialogStyle}> + + + + + + + ) +} + +export default AppStatusModal; \ No newline at end of file diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index e3dab82e3..bc69baeaf 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -602,7 +602,7 @@ const ProfileSettings = () => { {/* {view permissions} */} - + {/* {view privacy} */} From 30c9ccfe75b96386d9052b6fca232bafe160748d Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Tue, 19 Sep 2023 10:10:09 -0600 Subject: [PATCH 006/103] mange permissions in a custom hook we need to show the appStatusModal whenever the overallStatus is false now that the controls are split from the modal, we need to have central access to the overallStatus usePermissionStatus controls all the permissions from a central location. overallStatus can be easily extracted to show the modal in AppStatusModal in PermissionsControls, we now extract the checkList, overallStatus, etc from usePermissionStatus in order to control the UI --- www/js/appstatus/PermissionsControls.tsx | 402 +---------------------- www/js/control/AppStatusModal.tsx | 26 +- www/js/usePermissionStatus.ts | 393 ++++++++++++++++++++++ 3 files changed, 422 insertions(+), 399 deletions(-) create mode 100644 www/js/usePermissionStatus.ts diff --git a/www/js/appstatus/PermissionsControls.tsx b/www/js/appstatus/PermissionsControls.tsx index 45f55f527..0b4f27a32 100644 --- a/www/js/appstatus/PermissionsControls.tsx +++ b/www/js/appstatus/PermissionsControls.tsx @@ -1,403 +1,17 @@ //component to view and manage permission settings -import React, { useState, useEffect, useMemo } from "react"; -import { StyleSheet, useWindowDimensions, ScrollView, View } from "react-native"; -import { Dialog, Button, Text, useTheme } from 'react-native-paper'; +import React, { useState } from "react"; +import { StyleSheet, ScrollView, View } from "react-native"; +import { Button, Text } from 'react-native-paper'; import { useTranslation } from "react-i18next"; import PermissionItem from "./PermissionItem"; -import useAppConfig from "../useAppConfig"; -import useAppStateChange from "../useAppStateChange"; +import usePermissionStatus, { refreshAllChecks } from "../usePermissionStatus"; import ExplainPermissions from "./ExplainPermissions"; import AlertBar from "../control/AlertBar"; -const PermissionsControls = ({ permitVis, setPermitVis }) => { +const PermissionsControls = ({ onAccept }) => { const { t } = useTranslation(); - const { colors } = useTheme(); - const { appConfig, loading } = useAppConfig(); - - const { height: windowHeight } = useWindowDimensions(); - const [osver, setOsver] = useState(0); - const [platform, setPlatform] = useState(""); - - const [error, setError] = useState(""); - const [errorVis, setErrorVis] = useState(false); - const [explainVis, setExplainVis] = useState(false); - - const [checkList, setCheckList] = useState([]); - const [explanationList, setExplanationList] = useState>([]); - const [haveSetText, setHaveSetText] = useState(false); - - let iconMap = (statusState) => statusState ? "check-circle-outline" : "alpha-x-circle-outline"; - let colorMap = (statusState) => statusState ? colors.success : colors.danger; - - const overallStatus = useMemo(() => { - let status = true; - checkList.forEach((lc) => { - if(!lc.statusState){ - status = false; - } - }) - return status; - }, [checkList]) - - //using this function to update checks rather than mutate - //this cues React to update UI - function updateCheck(newObject) { - var tempList = [...checkList]; //make a copy rather than mutate - tempList.forEach((item, i) => { - if(item.name == newObject.name){ - tempList[i] = newObject; - } - }); - setCheckList(tempList); - } - - async function checkOrFix(checkObj, nativeFn, showError=true) { - console.log("checking object", checkObj.name, checkObj); - let newCheck = checkObj; - return nativeFn() - .then((status) => { - console.log("availability ", status) - newCheck.statusState = true; - updateCheck(newCheck); - console.log("after checking object", checkObj.name, checkList); - return status; - }).catch((error) => { - console.log("Error", error) - if (showError) { - console.log("please fix again"); - setError(error); - setErrorVis(true); - }; - newCheck.statusState = false; - updateCheck(newCheck); - console.log("after checking object", checkObj.name, checkList); - return error; - }); - } - - function setupAndroidLocChecks() { - let fixSettings = function() { - console.log("Fix and refresh location settings"); - return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationSettings, true); - }; - let checkSettings = function() { - console.log("Refresh location settings"); - return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationSettings, false); - }; - let fixPerms = function() { - console.log("fix and refresh location permissions"); - return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationPermissions, - true).then((error) => {if(error){locPermissionsCheck.desc = error}}); - }; - let checkPerms = function() { - console.log("fix and refresh location permissions"); - return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationPermissions, false); - }; - var androidSettingsDescTag = "intro.appstatus.locsettings.description.android-gte-9"; - if (osver < 9) { - androidSettingsDescTag = "intro.appstatus.locsettings.description.android-lt-9"; - } - var androidPermDescTag = "intro.appstatus.locperms.description.android-gte-12"; - if(osver < 6) { - androidPermDescTag = 'intro.appstatus.locperms.description.android-lt-6'; - } else if (osver < 10) { - androidPermDescTag = "intro.appstatus.locperms.description.android-6-9"; - } else if (osver < 11) { - androidPermDescTag= "intro.appstatus.locperms.description.android-10"; - } else if (osver < 12) { - androidPermDescTag= "intro.appstatus.locperms.description.android-11"; - } - console.log("description tags are "+androidSettingsDescTag+" "+androidPermDescTag); - // location settings - let locSettingsCheck = { - name: t("intro.appstatus.locsettings.name"), - desc: t(androidSettingsDescTag), - statusState: false, - fix: fixSettings, - refresh: checkSettings - } - let locPermissionsCheck = { - name: t("intro.appstatus.locperms.name"), - desc: t(androidPermDescTag), - statusState: false, - fix: fixPerms, - refresh: checkPerms - } - let tempChecks = checkList; - tempChecks.push(locSettingsCheck, locPermissionsCheck); - setCheckList(tempChecks); - } - - function setupIOSLocChecks() { - let fixSettings = function() { - console.log("Fix and refresh location settings"); - return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationSettings, - true); - }; - let checkSettings = function() { - console.log("Refresh location settings"); - return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationSettings, - false); - }; - let fixPerms = function() { - console.log("fix and refresh location permissions"); - return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationPermissions, - true).then((error) => {if(error){locPermissionsCheck.desc = error}}); - }; - let checkPerms = function() { - console.log("fix and refresh location permissions"); - return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationPermissions, - false); - }; - var iOSSettingsDescTag = "intro.appstatus.locsettings.description.ios"; - var iOSPermDescTag = "intro.appstatus.locperms.description.ios-gte-13"; - if(osver < 13) { - iOSPermDescTag = 'intro.appstatus.locperms.description.ios-lt-13'; - } - console.log("description tags are "+iOSSettingsDescTag+" "+iOSPermDescTag); - - const locSettingsCheck = { - name: t("intro.appstatus.locsettings.name"), - desc: t(iOSSettingsDescTag), - statusState: false, - fix: fixSettings, - refresh: checkSettings - }; - const locPermissionsCheck = { - name: t("intro.appstatus.locperms.name"), - desc: t(iOSPermDescTag), - statusState: false, - fix: fixPerms, - refresh: checkPerms - }; - let tempChecks = checkList; - tempChecks.push(locSettingsCheck, locPermissionsCheck); - setCheckList(tempChecks); - } - - function setupAndroidFitnessChecks() { - if(osver >= 10){ - let fixPerms = function() { - console.log("fix and refresh fitness permissions"); - return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixFitnessPermissions, - true).then((error) => {if(error){fitnessPermissionsCheck.desc = error}}); - }; - let checkPerms = function() { - console.log("fix and refresh fitness permissions"); - return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidFitnessPermissions, - false); - }; - - let fitnessPermissionsCheck = { - name: t("intro.appstatus.fitnessperms.name"), - desc: t("intro.appstatus.fitnessperms.description.android"), - fix: fixPerms, - refresh: checkPerms - } - let tempChecks = checkList; - tempChecks.push(fitnessPermissionsCheck); - setCheckList(tempChecks); - } - } - - function setupIOSFitnessChecks() { - let fixPerms = function() { - console.log("fix and refresh fitness permissions"); - return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixFitnessPermissions, - true).then((error) => {if(error){fitnessPermissionsCheck.desc = error}}); - }; - let checkPerms = function() { - console.log("fix and refresh fitness permissions"); - return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidFitnessPermissions, - false); - }; - - let fitnessPermissionsCheck = { - name: t("intro.appstatus.fitnessperms.name"), - desc: t("intro.appstatus.fitnessperms.description.ios"), - fix: fixPerms, - refresh: checkPerms - } - let tempChecks = checkList; - tempChecks.push(fitnessPermissionsCheck); - setCheckList(tempChecks); - } - - function setupAndroidNotificationChecks() { - let fixPerms = function() { - console.log("fix and refresh notification permissions"); - return checkOrFix(appAndChannelNotificationsCheck, window['cordova'].plugins.BEMDataCollection.fixShowNotifications, - true); - }; - let checkPerms = function() { - console.log("fix and refresh notification permissions"); - return checkOrFix(appAndChannelNotificationsCheck, window['cordova'].plugins.BEMDataCollection.isValidShowNotifications, - false); - }; - let appAndChannelNotificationsCheck = { - name: t("intro.appstatus.notificationperms.app-enabled-name"), - desc: t("intro.appstatus.notificationperms.description.android-enable"), - fix: fixPerms, - refresh: checkPerms - } - let tempChecks = checkList; - tempChecks.push(appAndChannelNotificationsCheck); - setCheckList(tempChecks); - } - - function setupAndroidBackgroundRestrictionChecks() { - let fixPerms = function() { - console.log("fix and refresh backgroundRestriction permissions"); - return checkOrFix(unusedAppsUnrestrictedCheck, window['cordova'].plugins.BEMDataCollection.fixUnusedAppRestrictions, - true); - }; - let checkPerms = function() { - console.log("fix and refresh backgroundRestriction permissions"); - return checkOrFix(unusedAppsUnrestrictedCheck, window['cordova'].plugins.BEMDataCollection.isUnusedAppUnrestricted, - false); - }; - let fixBatteryOpt = function() { - console.log("fix and refresh battery optimization permissions"); - return checkOrFix(ignoreBatteryOptCheck, window['cordova'].plugins.BEMDataCollection.fixIgnoreBatteryOptimizations, - true); - }; - let checkBatteryOpt = function() { - console.log("fix and refresh battery optimization permissions"); - return checkOrFix(ignoreBatteryOptCheck, window['cordova'].plugins.BEMDataCollection.isIgnoreBatteryOptimizations, - false); - }; - var androidUnusedDescTag = "intro.appstatus.unusedapprestrict.description.android-disable-gte-13"; - if (osver == 12) { - androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-12"; - } - else if (osver < 12) { - androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-lt-12"; - } - let unusedAppsUnrestrictedCheck = { - name: t("intro.appstatus.unusedapprestrict.name"), - desc: t(androidUnusedDescTag), - fix: fixPerms, - refresh: checkPerms - } - let ignoreBatteryOptCheck = { - name: t("intro.appstatus.ignorebatteryopt.name"), - desc: t("intro.appstatus.ignorebatteryopt.description.android-disable"), - fix: fixBatteryOpt, - refresh: checkBatteryOpt - } - let tempChecks = checkList; - tempChecks.push(unusedAppsUnrestrictedCheck, ignoreBatteryOptCheck); - setCheckList(tempChecks); - } - - function setupPermissionText() { - let tempExplanations = explanationList; - - let overallFitnessName = t('intro.appstatus.overall-fitness-name-android'); - let locExplanation = t('intro.appstatus.overall-loc-description'); - if(platform == "ios") { - overallFitnessName = t('intro.appstatus.overall-fitness-name-ios'); - if(osver < 13) { - locExplanation = (t("intro.permissions.locationPermExplanation-ios-lt-13")); - } else { - locExplanation = (t("intro.permissions.locationPermExplanation-ios-gte-13")); - } - } - tempExplanations.push({name: t('intro.appstatus.overall-loc-name'), desc: locExplanation}); - tempExplanations.push({name: overallFitnessName, desc: t('intro.appstatus.overall-fitness-description')}); - tempExplanations.push({name: t('intro.appstatus.overall-notification-name'), desc: t('intro.appstatus.overall-notification-description')}); - tempExplanations.push({name: t('intro.appstatus.overall-background-restrictions-name'), desc: t('intro.appstatus.overall-background-restrictions-description')}); - - setExplanationList(tempExplanations); - - //TODO - update samsung handling based on feedback - - console.log("Explanation = "+explanationList); - } - - function createChecklist(){ - if(platform == "android") { - setupAndroidLocChecks(); - setupAndroidFitnessChecks(); - setupAndroidNotificationChecks(); - setupAndroidBackgroundRestrictionChecks(); - } else if (platform == "ios") { - setupIOSLocChecks(); - setupIOSFitnessChecks(); - setupAndroidNotificationChecks(); - } else { - setError("Alert! unknownplatform, no tracking"); - setErrorVis(true); - console.log("Alert! unknownplatform, no tracking"); //need an alert, can use AlertBar? - } - - refreshAllChecks(); - } - - //refreshing checks with the plugins to update the check's statusState - function refreshAllChecks() { - //refresh each check - checkList.forEach((lc) => { - lc.refresh(); - }); - console.log("setting checks are", checkList); - } - - //recomputing checks updates the visual cues of their status - function recomputeAllChecks() { - console.log("recomputing checks", checkList); - checkList.forEach((lc) => { - lc.statusIcon = iconMap(lc.statusState); - lc.statusColor = colorMap(lc.statusState) - }); - } - - //anytime the status changes, may need to show modal - useEffect(() => { - let currentlyOpen = window?.appStatusModalOpened; - if(!currentlyOpen && overallStatus == false && appConfig && haveSetText) { //trying to block early cases from throwing modal - window.appStatusModalOpened = true; - setPermitVis(true); - } - }, [overallStatus]); - - useAppStateChange( function() { - console.log("PERMISSION CHECK: app has resumed, should refresh"); - refreshAllChecks(); - }); - - //load when ready - useEffect(() => { - if (appConfig && window['device']?.platform) { - setPlatform(window['device'].platform.toLowerCase()); - setOsver(window['device'].version.split(".")[0]); - - if(!haveSetText) - { - //window.appStatusModalOpened = false; - setupPermissionText(); - setHaveSetText(true); - } - else{ - console.log("setting up permissions"); - createChecklist(); - } - - } - }, [appConfig]); - - useEffect (() => { - if(!permitVis) { - window.appStatusModalOpened = false; - } - }, [permitVis]); - - //anytime the checks change (mostly when refreshed), recompute the visual pieces - useEffect(() => { - console.log("checklist changed, updating", checkList); - recomputeAllChecks(); - }, [checkList]) + const { checkList, overallStatus, error, errorVis, setErrorVis, explanationList } = usePermissionStatus(); return ( <> @@ -419,11 +33,11 @@ const PermissionsControls = ({ permitVis, setPermitVis }) => { diff --git a/www/js/control/AppStatusModal.tsx b/www/js/control/AppStatusModal.tsx index fad2424e6..2474bbfcc 100644 --- a/www/js/control/AppStatusModal.tsx +++ b/www/js/control/AppStatusModal.tsx @@ -1,12 +1,28 @@ -import React, { useState, useEffect, useMemo } from "react"; -import { Modal, useWindowDimensions, ScrollView, View } from "react-native"; -import { Dialog, Button, Text, useTheme } from 'react-native-paper'; +import React, { useEffect } from "react"; +import { Modal, useWindowDimensions } from "react-native"; +import { Dialog } from 'react-native-paper'; import PermissionsControls from "../appstatus/PermissionsControls"; +import usePermissionStatus from "../usePermissionStatus"; //TODO -- import settings styles for dialog const AppStatusModal = ({permitVis, setPermitVis, dialogStyle}) => { - const {colors} = useTheme(); const { height: windowHeight } = useWindowDimensions(); + const { overallStatus } = usePermissionStatus(); + + //anytime the status changes, may need to show modal + useEffect(() => { + let currentlyOpen = window?.appStatusModalOpened; + if(!currentlyOpen && overallStatus == false) { //trying to block early cases from throwing modal + window.appStatusModalOpened = true; + setPermitVis(true); + } + }, [overallStatus]); + + useEffect (() => { + if(!permitVis) { + window.appStatusModalOpened = false; + } + }, [permitVis]); return ( setPermitVis(false)} transparent={true}> @@ -14,7 +30,7 @@ const AppStatusModal = ({permitVis, setPermitVis, dialogStyle}) => { onDismiss={() => setPermitVis(false)} style={dialogStyle}> - + setPermitVis(false)}> diff --git a/www/js/usePermissionStatus.ts b/www/js/usePermissionStatus.ts new file mode 100644 index 000000000..4740eb5a0 --- /dev/null +++ b/www/js/usePermissionStatus.ts @@ -0,0 +1,393 @@ +import { useEffect, useRef, useState, useMemo } from 'react'; +import useAppStateChange from "./useAppStateChange"; +import useAppConfig from "./useAppConfig"; +import { useTheme } from 'react-native-paper'; +import { useTranslation } from "react-i18next"; + +//refreshing checks with the plugins to update the check's statusState +export function refreshAllChecks(checkList) { + //refresh each check + checkList.forEach((lc) => { + lc.refresh(); + }); + console.log("setting checks are", checkList); +} + +const usePermissionStatus = () => { + + const { t } = useTranslation(); + const { colors } = useTheme(); + const { appConfig, loading } = useAppConfig(); + + const [osver, setOsver] = useState(0); + const [platform, setPlatform] = useState(""); + + const [error, setError] = useState(""); + const [errorVis, setErrorVis] = useState(false); + + const [explainVis, setExplainVis] = useState(false); + + const [checkList, setCheckList] = useState([]); + const [explanationList, setExplanationList] = useState>([]); + const [haveSetText, setHaveSetText] = useState(false); + + let iconMap = (statusState) => statusState ? "check-circle-outline" : "alpha-x-circle-outline"; + let colorMap = (statusState) => statusState ? colors.success : colors.danger; + + const overallStatus = useMemo(() => { + let status = true; + checkList.forEach((lc) => { + if(!lc.statusState){ + status = false; + } + }) + return status; + }, [checkList]) + + //using this function to update checks rather than mutate + //this cues React to update UI + function updateCheck(newObject) { + var tempList = [...checkList]; //make a copy rather than mutate + tempList.forEach((item, i) => { + if(item.name == newObject.name){ + tempList[i] = newObject; + } + }); + setCheckList(tempList); + } + + async function checkOrFix(checkObj, nativeFn, showError=true) { + console.log("checking object", checkObj.name, checkObj); + let newCheck = checkObj; + return nativeFn() + .then((status) => { + console.log("availability ", status) + newCheck.statusState = true; + updateCheck(newCheck); + console.log("after checking object", checkObj.name, checkList); + return status; + }).catch((error) => { + console.log("Error", error) + if (showError) { + console.log("please fix again"); + setError(error); + setErrorVis(true); + }; + newCheck.statusState = false; + updateCheck(newCheck); + console.log("after checking object", checkObj.name, checkList); + return error; + }); + } + + function setupAndroidLocChecks() { + let fixSettings = function() { + console.log("Fix and refresh location settings"); + return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationSettings, true); + }; + let checkSettings = function() { + console.log("Refresh location settings"); + return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationSettings, false); + }; + let fixPerms = function() { + console.log("fix and refresh location permissions"); + return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationPermissions, + true).then((error) => {if(error){locPermissionsCheck.desc = error}}); + }; + let checkPerms = function() { + console.log("fix and refresh location permissions"); + return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationPermissions, false); + }; + var androidSettingsDescTag = "intro.appstatus.locsettings.description.android-gte-9"; + if (osver < 9) { + androidSettingsDescTag = "intro.appstatus.locsettings.description.android-lt-9"; + } + var androidPermDescTag = "intro.appstatus.locperms.description.android-gte-12"; + if(osver < 6) { + androidPermDescTag = 'intro.appstatus.locperms.description.android-lt-6'; + } else if (osver < 10) { + androidPermDescTag = "intro.appstatus.locperms.description.android-6-9"; + } else if (osver < 11) { + androidPermDescTag= "intro.appstatus.locperms.description.android-10"; + } else if (osver < 12) { + androidPermDescTag= "intro.appstatus.locperms.description.android-11"; + } + console.log("description tags are "+androidSettingsDescTag+" "+androidPermDescTag); + // location settings + let locSettingsCheck = { + name: t("intro.appstatus.locsettings.name"), + desc: t(androidSettingsDescTag), + statusState: false, + fix: fixSettings, + refresh: checkSettings + } + let locPermissionsCheck = { + name: t("intro.appstatus.locperms.name"), + desc: t(androidPermDescTag), + statusState: false, + fix: fixPerms, + refresh: checkPerms + } + let tempChecks = checkList; + tempChecks.push(locSettingsCheck, locPermissionsCheck); + setCheckList(tempChecks); + } + + function setupIOSLocChecks() { + let fixSettings = function() { + console.log("Fix and refresh location settings"); + return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationSettings, + true); + }; + let checkSettings = function() { + console.log("Refresh location settings"); + return checkOrFix(locSettingsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationSettings, + false); + }; + let fixPerms = function() { + console.log("fix and refresh location permissions"); + return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixLocationPermissions, + true).then((error) => {if(error){locPermissionsCheck.desc = error}}); + }; + let checkPerms = function() { + console.log("fix and refresh location permissions"); + return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationPermissions, + false); + }; + var iOSSettingsDescTag = "intro.appstatus.locsettings.description.ios"; + var iOSPermDescTag = "intro.appstatus.locperms.description.ios-gte-13"; + if(osver < 13) { + iOSPermDescTag = 'intro.appstatus.locperms.description.ios-lt-13'; + } + console.log("description tags are "+iOSSettingsDescTag+" "+iOSPermDescTag); + + const locSettingsCheck = { + name: t("intro.appstatus.locsettings.name"), + desc: t(iOSSettingsDescTag), + statusState: false, + fix: fixSettings, + refresh: checkSettings + }; + const locPermissionsCheck = { + name: t("intro.appstatus.locperms.name"), + desc: t(iOSPermDescTag), + statusState: false, + fix: fixPerms, + refresh: checkPerms + }; + let tempChecks = checkList; + tempChecks.push(locSettingsCheck, locPermissionsCheck); + setCheckList(tempChecks); + } + + function setupAndroidFitnessChecks() { + if(osver >= 10){ + let fixPerms = function() { + console.log("fix and refresh fitness permissions"); + return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixFitnessPermissions, + true).then((error) => {if(error){fitnessPermissionsCheck.desc = error}}); + }; + let checkPerms = function() { + console.log("fix and refresh fitness permissions"); + return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidFitnessPermissions, + false); + }; + + let fitnessPermissionsCheck = { + name: t("intro.appstatus.fitnessperms.name"), + desc: t("intro.appstatus.fitnessperms.description.android"), + fix: fixPerms, + refresh: checkPerms + } + let tempChecks = checkList; + tempChecks.push(fitnessPermissionsCheck); + setCheckList(tempChecks); + } + } + + function setupIOSFitnessChecks() { + let fixPerms = function() { + console.log("fix and refresh fitness permissions"); + return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixFitnessPermissions, + true).then((error) => {if(error){fitnessPermissionsCheck.desc = error}}); + }; + let checkPerms = function() { + console.log("fix and refresh fitness permissions"); + return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidFitnessPermissions, + false); + }; + + let fitnessPermissionsCheck = { + name: t("intro.appstatus.fitnessperms.name"), + desc: t("intro.appstatus.fitnessperms.description.ios"), + fix: fixPerms, + refresh: checkPerms + } + let tempChecks = checkList; + tempChecks.push(fitnessPermissionsCheck); + setCheckList(tempChecks); + } + + function setupAndroidNotificationChecks() { + let fixPerms = function() { + console.log("fix and refresh notification permissions"); + return checkOrFix(appAndChannelNotificationsCheck, window['cordova'].plugins.BEMDataCollection.fixShowNotifications, + true); + }; + let checkPerms = function() { + console.log("fix and refresh notification permissions"); + return checkOrFix(appAndChannelNotificationsCheck, window['cordova'].plugins.BEMDataCollection.isValidShowNotifications, + false); + }; + let appAndChannelNotificationsCheck = { + name: t("intro.appstatus.notificationperms.app-enabled-name"), + desc: t("intro.appstatus.notificationperms.description.android-enable"), + fix: fixPerms, + refresh: checkPerms + } + let tempChecks = checkList; + tempChecks.push(appAndChannelNotificationsCheck); + setCheckList(tempChecks); + } + + function setupAndroidBackgroundRestrictionChecks() { + let fixPerms = function() { + console.log("fix and refresh backgroundRestriction permissions"); + return checkOrFix(unusedAppsUnrestrictedCheck, window['cordova'].plugins.BEMDataCollection.fixUnusedAppRestrictions, + true); + }; + let checkPerms = function() { + console.log("fix and refresh backgroundRestriction permissions"); + return checkOrFix(unusedAppsUnrestrictedCheck, window['cordova'].plugins.BEMDataCollection.isUnusedAppUnrestricted, + false); + }; + let fixBatteryOpt = function() { + console.log("fix and refresh battery optimization permissions"); + return checkOrFix(ignoreBatteryOptCheck, window['cordova'].plugins.BEMDataCollection.fixIgnoreBatteryOptimizations, + true); + }; + let checkBatteryOpt = function() { + console.log("fix and refresh battery optimization permissions"); + return checkOrFix(ignoreBatteryOptCheck, window['cordova'].plugins.BEMDataCollection.isIgnoreBatteryOptimizations, + false); + }; + var androidUnusedDescTag = "intro.appstatus.unusedapprestrict.description.android-disable-gte-13"; + if (osver == 12) { + androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-12"; + } + else if (osver < 12) { + androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-lt-12"; + } + let unusedAppsUnrestrictedCheck = { + name: t("intro.appstatus.unusedapprestrict.name"), + desc: t(androidUnusedDescTag), + fix: fixPerms, + refresh: checkPerms + } + let ignoreBatteryOptCheck = { + name: t("intro.appstatus.ignorebatteryopt.name"), + desc: t("intro.appstatus.ignorebatteryopt.description.android-disable"), + fix: fixBatteryOpt, + refresh: checkBatteryOpt + } + let tempChecks = checkList; + tempChecks.push(unusedAppsUnrestrictedCheck, ignoreBatteryOptCheck); + setCheckList(tempChecks); + } + + function setupPermissionText() { + let tempExplanations = explanationList; + + let overallFitnessName = t('intro.appstatus.overall-fitness-name-android'); + let locExplanation = t('intro.appstatus.overall-loc-description'); + if(platform == "ios") { + overallFitnessName = t('intro.appstatus.overall-fitness-name-ios'); + if(osver < 13) { + locExplanation = (t("intro.permissions.locationPermExplanation-ios-lt-13")); + } else { + locExplanation = (t("intro.permissions.locationPermExplanation-ios-gte-13")); + } + } + tempExplanations.push({name: t('intro.appstatus.overall-loc-name'), desc: locExplanation}); + tempExplanations.push({name: overallFitnessName, desc: t('intro.appstatus.overall-fitness-description')}); + tempExplanations.push({name: t('intro.appstatus.overall-notification-name'), desc: t('intro.appstatus.overall-notification-description')}); + tempExplanations.push({name: t('intro.appstatus.overall-background-restrictions-name'), desc: t('intro.appstatus.overall-background-restrictions-description')}); + + setExplanationList(tempExplanations); + + //TODO - update samsung handling based on feedback + + console.log("Explanation = "+explanationList); + } + + function createChecklist(){ + if(platform == "android") { + setupAndroidLocChecks(); + setupAndroidFitnessChecks(); + setupAndroidNotificationChecks(); + setupAndroidBackgroundRestrictionChecks(); + } else if (platform == "ios") { + setupIOSLocChecks(); + setupIOSFitnessChecks(); + setupAndroidNotificationChecks(); + } else { + setError("Alert! unknownplatform, no tracking"); + setErrorVis(true); + console.log("Alert! unknownplatform, no tracking"); //need an alert, can use AlertBar? + } + + refreshAllChecks(checkList); + } + + // //refreshing checks with the plugins to update the check's statusState + // function refreshAllChecks() { + // //refresh each check + // checkList.forEach((lc) => { + // lc.refresh(); + // }); + // console.log("setting checks are", checkList); + // } + + //recomputing checks updates the visual cues of their status + function recomputeAllChecks() { + console.log("recomputing checks", checkList); + checkList.forEach((lc) => { + lc.statusIcon = iconMap(lc.statusState); + lc.statusColor = colorMap(lc.statusState) + }); + } + + useAppStateChange( function() { + console.log("PERMISSION CHECK: app has resumed, should refresh"); + refreshAllChecks(checkList); + }); + + //load when ready + useEffect(() => { + if (appConfig && window['device']?.platform) { + setPlatform(window['device'].platform.toLowerCase()); + setOsver(window['device'].version.split(".")[0]); + + if(!haveSetText) + { + //window.appStatusModalOpened = false; + setupPermissionText(); + setHaveSetText(true); + } + else{ + console.log("setting up permissions"); + createChecklist(); + } + } + }, [appConfig]); + + //anytime the checks change (mostly when refreshed), recompute the visual pieces + useEffect(() => { + console.log("checklist changed, updating", checkList); + recomputeAllChecks(); + }, [checkList]); + + return {checkList, overallStatus, error, errorVis, setErrorVis, explanationList}; + } + + export default usePermissionStatus; \ No newline at end of file From 85ca84a16ff5c4ede17b1088720524385923c25b Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Tue, 19 Sep 2023 10:15:18 -0600 Subject: [PATCH 007/103] adjust button styles --- www/js/appstatus/PermissionsControls.tsx | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/www/js/appstatus/PermissionsControls.tsx b/www/js/appstatus/PermissionsControls.tsx index 0b4f27a32..ded51b898 100644 --- a/www/js/appstatus/PermissionsControls.tsx +++ b/www/js/appstatus/PermissionsControls.tsx @@ -31,7 +31,7 @@ const PermissionsControls = ({ onAccept }) => { )} - + + {t('join.scan-details')} + + + - {t('join.or')} - + + + + {t('join.paste-details')} + + + + setPasteModalVis(false)}> + setPasteModalVis(false)}> + + + + + + + + ); +} + +const s = StyleSheet.create({ + welcomeTitle: { + marginTop: 20, + textAlign: 'center', + paddingVertical: 20, + fontWeight: '600', + }, + page: { + paddingHorizontal: 15, + }, +}); + +export default JoinPage; From 79dfc9c1ac725d1d7ea9bc0fa3f9b21341f43867 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 11:45:15 -0400 Subject: [PATCH 013/103] add onboarding states to AppContext We will derive onboarding state from the result of StartPrefs.getPendingOnboardingState - if it is null (no pending state) then we can route to the rest of the application. If there is a string value, it specifies which screen should be shown in the OnboardingStack. Currently, only JoinPage is implemented in OnboardingStack --- www/js/App.tsx | 23 ++++++++++++++++------- www/js/onboarding/OnboardingStack.tsx | 25 ++++++++++++++++--------- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index b09a0a830..cf2b5b542 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -1,5 +1,5 @@ -import React, { useState, createContext, useMemo } from 'react'; -import { angularize } from './angular-react-helper'; +import React, { useEffect, useState, createContext, useMemo } from 'react'; +import { angularize, getAngularService } from './angular-react-helper'; import { BottomNavigation, Button, useTheme } from 'react-native-paper'; import { useTranslation } from 'react-i18next'; import LabelTab from './diary/LabelTab'; @@ -14,15 +14,18 @@ const defaultRoutes = (t) => [ { key: 'control', title: t('control.profile-tab'), focusedIcon: 'account', unfocusedIcon: 'account-outline' }, ]; -export const AppContext = createContext({finishedOnboarding: false}); +export const AppContext = createContext({}); const App = () => { + const [index, setIndex] = useState(0); - const [finishedOnboarding, setFinishedOnboarding] = useState(false); + const [pendingOnboardingState, setPendingOnboardingState] = useState(true); const { appConfig, loading } = useAppConfig(); const { colors } = useTheme(); const { t } = useTranslation(); + const StartPrefs = getAngularService('StartPrefs'); + const routes = useMemo(() => { const showMetrics = appConfig?.survey_info?.['trip-labels'] == 'MULTILABEL'; return showMetrics ? defaultRoutes(t) : defaultRoutes(t).filter(r => r.key != 'metrics'); @@ -34,16 +37,22 @@ const App = () => { control: ProfileSettings, }); + const refreshOnboardingState = () => StartPrefs.getPendingOnboardingState().then(setPendingOnboardingState); + // useEffect(() => { refreshOnboardingState() }, []); + const appContextValue = { appConfig, loading, - finishedOnboarding, - setFinishedOnboarding, + pendingOnboardingState, + setPendingOnboardingState, + refreshOnboardingState, } + console.debug('pendingOnboardingState in App', pendingOnboardingState); + return (<> - {finishedOnboarding ? + {pendingOnboardingState == null ? { - const { setFinishedOnboarding } = useContext(AppContext); - return ( - - (Onboarding Placeholder) - - - ); + const { pendingOnboardingState } = useContext(AppContext); + + console.debug('pendingOnboardingState in OnboardingStack', pendingOnboardingState); + + if (pendingOnboardingState) { + return ; + } } export default OnboardingStack From 1cea7860464e6a39b8a51ef8fb35ed3e1c6441aa Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 12:01:58 -0400 Subject: [PATCH 014/103] fix conflict of app.js and App.tsx Because Unix systems are case-insensitive to filenames, and Typescript is insensitive to file extensions when dealing with imports, we had a conflict between app.js and App.tsx. This was causing autoreload to not work for the App.tsx component. I'm going to rename the old app.js file, which is the Angular entry point, to ngApp.js. Soon, we will not need it anyway! --- www/index.js | 2 +- www/js/main.js | 2 +- www/js/{app.js => ngApp.js} | 0 www/js/onboarding/JoinPage.tsx | 2 +- www/js/onboarding/OnboardingStack.tsx | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename www/js/{app.js => ngApp.js} (100%) diff --git a/www/index.js b/www/index.js index 17a5326d7..651d0981c 100644 --- a/www/index.js +++ b/www/index.js @@ -7,7 +7,7 @@ import './css/main.diary.css'; import './manual_lib/fontawesome/css/all.min.css'; import 'leaflet/dist/leaflet.css'; -import './js/app.js'; +import './js/ngApp.js'; import './js/config/dynamic_config.js'; import './js/config/imperial.js'; import './js/config/server_conn.js'; diff --git a/www/js/main.js b/www/js/main.js index 1a6f4eae9..9724af0c3 100644 --- a/www/js/main.js +++ b/www/js/main.js @@ -1,7 +1,7 @@ 'use strict'; import angular from 'angular'; -import App from './app'; +import App from './App'; angular.module('emission.main', ['emission.main.diary', 'emission.main.control', diff --git a/www/js/app.js b/www/js/ngApp.js similarity index 100% rename from www/js/app.js rename to www/js/ngApp.js diff --git a/www/js/onboarding/JoinPage.tsx b/www/js/onboarding/JoinPage.tsx index b8808f8f8..31849447d 100644 --- a/www/js/onboarding/JoinPage.tsx +++ b/www/js/onboarding/JoinPage.tsx @@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next'; import { View, Image, Modal, StyleSheet } from 'react-native'; import { Button, Dialog, Divider, Surface, Text, TextInput } from 'react-native-paper'; import { initByUser } from '../config/dynamicConfig'; -import { AppContext } from '../app'; +import { AppContext } from '../App'; const JoinPage = () => { diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index 6fc290631..dfcf59e12 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -1,5 +1,5 @@ import React, { useContext } from "react"; -import { AppContext } from "../app"; +import { AppContext } from "../App"; import JoinPage from "./JoinPage"; // true if loading/undetermined From 61a58ec164d1f06f2ffb3614e01f8a97f5a988b8 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 12:50:25 -0400 Subject: [PATCH 015/103] extract getPendingOnboardingState to helper This will replace getPendingOnboardingState from the StartPrefs service. The new implementation will be typed according to the OnboardingState type and congruent with what OnboardingStack expects. --- www/js/App.tsx | 3 ++- www/js/onboarding/onboardingHelper.ts | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 www/js/onboarding/onboardingHelper.ts diff --git a/www/js/App.tsx b/www/js/App.tsx index cf2b5b542..c2619e08d 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -7,6 +7,7 @@ import MetricsTab from './metrics/MetricsTab'; import ProfileSettings from './control/ProfileSettings'; import useAppConfig from './useAppConfig'; import OnboardingStack from './onboarding/OnboardingStack'; +import { getPendingOnboardingState } from './onboarding/onboardingHelper'; const defaultRoutes = (t) => [ { key: 'label', title: t('diary.label-tab'), focusedIcon: 'check-bold', unfocusedIcon: 'check-outline' }, @@ -37,7 +38,7 @@ const App = () => { control: ProfileSettings, }); - const refreshOnboardingState = () => StartPrefs.getPendingOnboardingState().then(setPendingOnboardingState); + const refreshOnboardingState = () => getPendingOnboardingState().then(setPendingOnboardingState); // useEffect(() => { refreshOnboardingState() }, []); const appContextValue = { diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts new file mode 100644 index 000000000..aa67d149e --- /dev/null +++ b/www/js/onboarding/onboardingHelper.ts @@ -0,0 +1,15 @@ +import { getAngularService } from "../angular-react-helper"; +import { OnboardingState } from "./OnboardingStack"; + +export function getPendingOnboardingState(): Promise { + const StartPrefs = getAngularService('StartPrefs'); + return StartPrefs.readStartupState().then(([is_intro_done, is_consented, has_config]) => { + if (!has_config) { + return 'join'; + } else if (!is_consented) { + return 'consent'; + } else if (!is_intro_done) { + return 'intro'; + } + }); +}; From 6f6ae5d39f24b1fe289fdbac0bcb0d71ce5b325e Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 12:53:27 -0400 Subject: [PATCH 016/103] inject react root into index.html We don't have any Angular UI elements to be displayed anymore, but we still need Angular for the services. So we'll keep the initialization logic that is happening in ngApp.js, but remove and from index.html. Instead we will have an #appRoot element, and at the end of the Angular init logic in ngApp, we'll inject the App.tsx component into this #appRoot. At this point, we shouldn't need to angularize / embed React views into Angular views, because there _are_ no Angular views anymore! --- www/css/style.css | 5 ----- www/index.html | 15 ++------------- www/js/ngApp.js | 26 ++++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 18 deletions(-) diff --git a/www/css/style.css b/www/css/style.css index 8910b2258..dea003e7b 100644 --- a/www/css/style.css +++ b/www/css/style.css @@ -44,11 +44,6 @@ label-tab > div { --accent-dark: hsl(200 100% 30%); } -body.platform-ios { - padding-top: calc(env(safe-area-inset-top) / 2); - margin: 0 10px 0 0; -} - .view-container.tab-content { height: auto !important; bottom: 50px !important; diff --git a/www/index.html b/www/index.html index d5d3266ad..451c3047f 100644 --- a/www/index.html +++ b/www/index.html @@ -11,19 +11,8 @@ - - - - - - - + +
diff --git a/www/js/ngApp.js b/www/js/ngApp.js index a52edaa12..ef30afc08 100644 --- a/www/js/ngApp.js +++ b/www/js/ngApp.js @@ -3,6 +3,8 @@ 'use strict'; import angular from 'angular'; +import React from 'react'; +import { createRoot } from 'react-dom/client'; import 'angular-animate'; import 'angular-sanitize'; import 'angular-translate'; @@ -25,6 +27,11 @@ import initializedI18next from './i18nextInit'; window.i18next = initializedI18next; import 'ng-i18next'; +import { Provider as PaperProvider } from 'react-native-paper'; +import App from './App'; +import { getTheme } from './appTheme'; +import { SafeAreaView } from 'react-native-safe-area-context'; + angular.module('emission', ['ionic', 'jm.i18next', 'emission.controllers','emission.services', 'emission.plugin.logger', 'emission.splash.customURLScheme', 'emission.splash.referral', @@ -71,6 +78,25 @@ angular.module('emission', ['ionic', 'jm.i18next', // remove during migration to react native localStorageService.remove("OP_GEOFENCE_CFG"); cordova.plugins.BEMUserCache.removeLocalStorage("OP_GEOFENCE_CFG"); + + const rootEl = document.getElementById('appRoot'); + const reactRoot = createRoot(rootEl); + + const theme = getTheme(); + + reactRoot.render( + + + + + + + ); }); console.log("Ending run"); }) From 92b71d0e8485465b50c9f30275b43cfd2b4fa80a Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 15:04:45 -0400 Subject: [PATCH 017/103] resent config AND consent with resetDataAndRefresh This is called on logout and if the user declines consent. It cleared the stored config, but it didn't clear consent. It should clear everything, so let's implement a new version on the rewritten version of dynamicConfig, which uses clearAll instead of clearing just the config. --- www/js/config/dynamicConfig.ts | 8 ++++++++ www/js/control/ProfileSettings.jsx | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/www/js/config/dynamicConfig.ts b/www/js/config/dynamicConfig.ts index 8aeecb602..29fcbc235 100644 --- a/www/js/config/dynamicConfig.ts +++ b/www/js/config/dynamicConfig.ts @@ -212,3 +212,11 @@ export function initByUser(urlComponents) { return Promise.reject(error); } } + +export function resetDataAndRefresh() { + const KVStore = getAngularService('KVStore'); + const resetNativePromise = window['cordova'].plugins.BEMUserCache.putRWDocument(CONFIG_PHONE_UI, {}); + const resetKVStorePromise = KVStore.clearAll(); + return Promise.all([resetNativePromise, resetKVStorePromise]) + .then(() => window.location.reload()); +} diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 3de05e4e4..3dc237413 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -19,6 +19,7 @@ import SensedPage from "./SensedPage" import LogPage from "./LogPage"; import ControlSyncHelper, {ForceSyncRow, getHelperSyncSettings} from "./ControlSyncHelper"; import ControlCollectionHelper, {getHelperCollectionSettings, getState, isMediumAccuracy, helperToggleLowAccuracy, forceTransition} from "./ControlCollectionHelper"; +import { resetDataAndRefresh } from "../config/dynamicConfig"; //any pure functions can go outside const ProfileSettings = () => { @@ -462,7 +463,7 @@ const ProfileSettings = () => { {t('general-settings.cancel')} From 529a98e57670176b42c79c7443afe4299b80e6c7 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 15:08:59 -0400 Subject: [PATCH 018/103] expand onboarding states, add basic consent page This is a temporary ConsentPage with just 2 buttons: accept/decline. On accept we execute the logic that was in intro.js - it calls `login` and attempts to register the user via CommHelper. On decline, we clear data and force refresh --- www/js/onboarding/ConsentPage.tsx | 70 +++++++++++++++++++++++++++ www/js/onboarding/OnboardingStack.tsx | 9 ++-- www/js/onboarding/onboardingHelper.ts | 31 +++++++++--- 3 files changed, 99 insertions(+), 11 deletions(-) create mode 100644 www/js/onboarding/ConsentPage.tsx diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx new file mode 100644 index 000000000..17ae13a5d --- /dev/null +++ b/www/js/onboarding/ConsentPage.tsx @@ -0,0 +1,70 @@ +import React, { useContext, useState } from 'react'; +import { useTranslation } from 'react-i18next'; +import { View, Image, Modal, StyleSheet } from 'react-native'; +import { Button, Dialog, Divider, Surface, Text, TextInput } from 'react-native-paper'; +import { initByUser, resetDataAndRefresh } from '../config/dynamicConfig'; +import { AppContext } from '../App'; +import { getAngularService } from '../angular-react-helper'; +import { displayError, displayErrorMsg } from '../plugin/logger'; + +const JoinPage = () => { + + const { t } = useTranslation(); + const context = useContext(AppContext); + const { pendingOnboardingState, refreshOnboardingState } = context; + + /* If the user does not consent, we boot them back out to the join screen */ + function disagree() { + resetDataAndRefresh(); + }; + + function agree() { + const StartPrefs = getAngularService('StartPrefs'); + StartPrefs.markConsented().then((response) => { + login(pendingOnboardingState.opcode).then((response) => { + + refreshOnboardingState(); + }); + }); + }; + + function login(token) { + const CommHelper = getAngularService('CommHelper'); + const KVStore = getAngularService('KVStore'); + const EXPECTED_METHOD = "prompted-auth"; + const dbStorageObject = {"token": token}; + return KVStore.set(EXPECTED_METHOD, dbStorageObject).then((r) => { + // ionicToast.show(message, position, stick, time); + // $scope.next(); + // ionicToast.show(opcode, 'middle', false, 2500); + CommHelper.registerUser((successResult) => { + refreshOnboardingState(); + }, function(errorResult) { + displayError(errorResult, "User registration error"); + }); + }).catch((e) => { + displayError(e, "Sign in error"); + }); + }; + + return (<> + + + + + ); +} + +const s = StyleSheet.create({ + welcomeTitle: { + marginTop: 20, + textAlign: 'center', + paddingVertical: 20, + fontWeight: '600', + }, + page: { + paddingHorizontal: 15, + }, +}); + +export default JoinPage; diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index dfcf59e12..bbf475cb1 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -1,6 +1,7 @@ import React, { useContext } from "react"; import { AppContext } from "../App"; import JoinPage from "./JoinPage"; +import ConsentPage from "./ConsentPage"; // true if loading/undetermined // 'join' if no config present @@ -8,16 +9,18 @@ import JoinPage from "./JoinPage"; // 'permissions' if consented but not granted permissions // 'survey' if granted permissions but not completed survey // null if all done -export type OnboardingState = true | 'join' | 'consent' | 'permissions' | 'survey' | null; - const OnboardingStack = () => { const { pendingOnboardingState } = useContext(AppContext); console.debug('pendingOnboardingState in OnboardingStack', pendingOnboardingState); - if (pendingOnboardingState) { + if (pendingOnboardingState.route == 'join') { return ; + } else if (pendingOnboardingState.route == 'consent') { + return ; + } else { + return 'TODO' } } diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index aa67d149e..aeb2ebae8 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -1,15 +1,30 @@ import { getAngularService } from "../angular-react-helper"; -import { OnboardingState } from "./OnboardingStack"; +type OnboardingRoute = 'join' | 'consent' | false; +export type OnboardingState = { + opcode: string, + route: OnboardingRoute, +} export function getPendingOnboardingState(): Promise { - const StartPrefs = getAngularService('StartPrefs'); - return StartPrefs.readStartupState().then(([is_intro_done, is_consented, has_config]) => { - if (!has_config) { - return 'join'; + return Promise.all([readConfig(), readConsented()]).then(([config, is_consented]) => { + let route; + if (!config) { + route = 'join'; } else if (!is_consented) { - return 'consent'; - } else if (!is_intro_done) { - return 'intro'; + route = 'consent'; + } else { + return null; // onboarding is done; no pending state } + return { route, opcode: config?.joined?.opcode }; }); }; + +async function readConfig() { + const DynamicConfig = getAngularService('DynamicConfig'); + return DynamicConfig.loadSavedConfig() as Promise; +} + +async function readConsented() { + const StartPrefs = getAngularService('StartPrefs'); + return StartPrefs.readConsentState().then(StartPrefs.isConsented) as Promise; +} From 5247eb4c3fcfdeaac6278910987dcfd4092dfca4 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 15:10:35 -0400 Subject: [PATCH 019/103] set serverConn settings on config change; rewrite rewrites from server_conn - the function in serverConn for setServerConnSettings does the same as `init` from server_conn did, and will be called from App.tsx any time the dynamic config changes --- www/js/App.tsx | 14 +++++++++++--- www/js/config/serverConn.ts | 13 +++++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 www/js/config/serverConn.ts diff --git a/www/js/App.tsx b/www/js/App.tsx index c2619e08d..57f9431cb 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -7,7 +7,8 @@ import MetricsTab from './metrics/MetricsTab'; import ProfileSettings from './control/ProfileSettings'; import useAppConfig from './useAppConfig'; import OnboardingStack from './onboarding/OnboardingStack'; -import { getPendingOnboardingState } from './onboarding/onboardingHelper'; +import { OnboardingState, getPendingOnboardingState } from './onboarding/onboardingHelper'; +import { setServerConnSettings } from './config/serverConn'; const defaultRoutes = (t) => [ { key: 'label', title: t('diary.label-tab'), focusedIcon: 'check-bold', unfocusedIcon: 'check-outline' }, @@ -20,7 +21,7 @@ export const AppContext = createContext({}); const App = () => { const [index, setIndex] = useState(0); - const [pendingOnboardingState, setPendingOnboardingState] = useState(true); + const [pendingOnboardingState, setPendingOnboardingState] = useState(null); const { appConfig, loading } = useAppConfig(); const { colors } = useTheme(); const { t } = useTranslation(); @@ -39,7 +40,14 @@ const App = () => { }); const refreshOnboardingState = () => getPendingOnboardingState().then(setPendingOnboardingState); - // useEffect(() => { refreshOnboardingState() }, []); + useEffect(() => { refreshOnboardingState() }, []); + + useEffect(() => { + if (!appConfig) return; + setServerConnSettings(appConfig).then(() => { + refreshOnboardingState(); + }); + }, [appConfig]); const appContextValue = { appConfig, diff --git a/www/js/config/serverConn.ts b/www/js/config/serverConn.ts new file mode 100644 index 000000000..e3371270b --- /dev/null +++ b/www/js/config/serverConn.ts @@ -0,0 +1,13 @@ +import { logDebug } from "../plugin/logger"; + +export async function setServerConnSettings(config) { + if (!config) return Promise.resolve(null); + if (config.server) { + logDebug("connectionConfig = " + JSON.stringify(config.server)); + return window['cordova'].plugins.BEMConnectionSettings.setSettings(config.server); + } else { + const defaultConfig = await window['cordova'].plugins.BEMConnectionSettings.getDefaultSettings(); + logDebug("defaultConfig = " + JSON.stringify(defaultConfig)); + return window['cordova'].plugins.BEMConnectionSettings.setSettings(defaultConfig); + } +} From de7edd9ab6ef0c48b66a446c2f2fa57a606d3165 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 16:05:15 -0400 Subject: [PATCH 020/103] set statusBarHeight to 0 on all AppBars Because the entire App component is now injected into a SafeAreaView in ngApp.js, we no longer need these offsets --- www/js/control/LogPage.tsx | 4 ++-- www/js/control/ProfileSettings.jsx | 2 +- www/js/control/SensedPage.tsx | 4 ++-- www/js/diary/list/LabelListScreen.tsx | 2 +- www/js/metrics/MetricsTab.tsx | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/www/js/control/LogPage.tsx b/www/js/control/LogPage.tsx index 7d6d279ee..e33d2f9a3 100644 --- a/www/js/control/LogPage.tsx +++ b/www/js/control/LogPage.tsx @@ -108,7 +108,7 @@ const LogPage = ({pageVis, setPageVis}) => { return ( setPageVis(false)}> - + {setPageVis(false)}}/> @@ -150,4 +150,4 @@ const styles = StyleSheet.create({ }), }); -export default LogPage; \ No newline at end of file +export default LogPage; diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 3dc237413..4941dd1e2 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -369,7 +369,7 @@ const ProfileSettings = () => { return ( <> - + {t('control.log-out')} setLogoutVis(true)}> diff --git a/www/js/control/SensedPage.tsx b/www/js/control/SensedPage.tsx index 2f62d5c6c..b746dfc8d 100644 --- a/www/js/control/SensedPage.tsx +++ b/www/js/control/SensedPage.tsx @@ -54,7 +54,7 @@ const SensedPage = ({pageVis, setPageVis}) => { return ( setPageVis(false)}> - + setPageVis(false)}/> @@ -88,4 +88,4 @@ const styles = StyleSheet.create({ }), }); -export default SensedPage; \ No newline at end of file +export default SensedPage; diff --git a/www/js/diary/list/LabelListScreen.tsx b/www/js/diary/list/LabelListScreen.tsx index 0ed5f702b..4fb1702b2 100644 --- a/www/js/diary/list/LabelListScreen.tsx +++ b/www/js/diary/list/LabelListScreen.tsx @@ -14,7 +14,7 @@ const LabelListScreen = () => { const { colors } = useTheme(); return (<> - + { const cardWidth = windowWidth * .88; return (<> - + From 73da70417d74d3e48bc4bfc61183d4cb7b43ea8f Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Wed, 20 Sep 2023 16:07:00 -0400 Subject: [PATCH 021/103] add app-wide AppStatusModal; remove from LabelTab Instead of including the AppStatusModal individually on the tabs, we can include in in the entire App component and have it appear any time permissions are incorrect. However, it should only show if the user already consented --- www/js/App.tsx | 5 +++++ www/js/diary/LabelTab.tsx | 16 ---------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index 57f9431cb..e3dcc5453 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -9,6 +9,7 @@ import useAppConfig from './useAppConfig'; import OnboardingStack from './onboarding/OnboardingStack'; import { OnboardingState, getPendingOnboardingState } from './onboarding/onboardingHelper'; import { setServerConnSettings } from './config/serverConn'; +import AppStatusModal from './control/AppStatusModal'; const defaultRoutes = (t) => [ { key: 'label', title: t('diary.label-tab'), focusedIcon: 'check-bold', unfocusedIcon: 'check-outline' }, @@ -22,6 +23,7 @@ const App = () => { const [index, setIndex] = useState(0); const [pendingOnboardingState, setPendingOnboardingState] = useState(null); + const [permissionsPopupVis, setPermissionsPopupVis] = useState(false); const { appConfig, loading } = useAppConfig(); const { colors } = useTheme(); const { t } = useTranslation(); @@ -76,6 +78,9 @@ const App = () => { : } + {(pendingOnboardingState == null || pendingOnboardingState.route != 'join' && pendingOnboardingState.route != 'consent') && + + }
); } diff --git a/www/js/diary/LabelTab.tsx b/www/js/diary/LabelTab.tsx index 730b8397c..e5d40dc16 100644 --- a/www/js/diary/LabelTab.tsx +++ b/www/js/diary/LabelTab.tsx @@ -21,7 +21,6 @@ import { fillLocationNamesOfTrip, resetNominatimLimiter } from "./addressNamesHe import { SurveyOptions } from "../survey/survey"; import { getLabelOptions } from "../survey/multilabel/confirmHelper"; import { displayError } from "../plugin/logger"; -import AppStatusModal from "../control/AppStatusModal"; import { useTheme } from "react-native-paper"; let labelPopulateFactory, labelsResultMap, notesResultMap, showPlaces; @@ -52,8 +51,6 @@ const LabelTab = () => { const CommHelper = getAngularService('CommHelper'); const enbs = getAngularService('EnketoNotesButtonService'); - const [permissionVis, setPermissionVis] = useState(false); - // initialization, once the appConfig is loaded useEffect(() => { if (loading) return; @@ -67,8 +64,6 @@ const LabelTab = () => { const placeSurveyName = appConfig.survey_info?.buttons?.['place-notes']?.surveyName; enbs.initConfig(tripSurveyName, placeSurveyName); - checkPermissionsStatus(); - // we will show filters if 'additions' are not configured // https://github.com/e-mission/e-mission-docs/issues/894 if (appConfig.survey_info?.buttons == undefined) { @@ -228,15 +223,6 @@ const LabelTab = () => { setIsLoading(false); }, [displayedEntries]); - // TODO move this out of LabelTab; should be a global check & popup that can show in any tab - function checkPermissionsStatus() { - $rootScope.$broadcast("recomputeAppStatus", (status) => { - if (!status) { - setPermissionVis(true); //if the status is false, popup modal - } - }); - } - const timelineMapRef = useRef(timelineMap); async function repopulateTimelineEntry(oid: string) { if (!timelineMap.has(oid)) return console.error("Item with oid: " + oid + " not found in timeline"); @@ -290,8 +276,6 @@ const LabelTab = () => { This is what `detachPreviousScreen:false` does. */ options={{detachPreviousScreen: false}} /> - ); From f1a2f71129d8c64c7c1871b7a53201777725b9ab Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Wed, 20 Sep 2023 14:38:58 -0600 Subject: [PATCH 022/103] correct naming of PrivacyPolicy was mistakenly exporting this component as PrivacyPolicyModal (the wrapped component used in ProfileSettings) --- www/js/join/PrivacyPolicy.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/www/js/join/PrivacyPolicy.tsx b/www/js/join/PrivacyPolicy.tsx index 9b6499f6d..93d8387b1 100644 --- a/www/js/join/PrivacyPolicy.tsx +++ b/www/js/join/PrivacyPolicy.tsx @@ -5,7 +5,7 @@ import { useTranslation } from "react-i18next"; import useAppConfig from "../useAppConfig"; import i18next from "i18next"; -const PrivacyPolicyModal = () => { +const PrivacyPolicy = () => { const { t } = useTranslation(); const { colors } = useTheme(); const { appConfig, loading } = useAppConfig(); @@ -181,4 +181,4 @@ const styles = StyleSheet.create({ } }); -export default PrivacyPolicyModal; \ No newline at end of file +export default PrivacyPolicy; \ No newline at end of file From 3986794ad087421a3e1372781435649aa1e957ab Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Wed, 20 Sep 2023 14:39:39 -0600 Subject: [PATCH 023/103] add privacy policy to the consent page add PrivacyPolicy for users to accept needed flex:1 on the page style to enable scrolling --- www/js/onboarding/ConsentPage.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx index 17ae13a5d..deafa8513 100644 --- a/www/js/onboarding/ConsentPage.tsx +++ b/www/js/onboarding/ConsentPage.tsx @@ -6,6 +6,7 @@ import { initByUser, resetDataAndRefresh } from '../config/dynamicConfig'; import { AppContext } from '../App'; import { getAngularService } from '../angular-react-helper'; import { displayError, displayErrorMsg } from '../plugin/logger'; +import PrivacyPolicy from '../join/PrivacyPolicy'; const JoinPage = () => { @@ -49,6 +50,7 @@ const JoinPage = () => { return (<> + @@ -64,6 +66,7 @@ const s = StyleSheet.create({ }, page: { paddingHorizontal: 15, + flex: 1 }, }); From bd8cc740bab6f5a3e0687ce1eb8a500d8a6def42 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Thu, 21 Sep 2023 09:25:24 -0600 Subject: [PATCH 024/103] add summary to PrivacyPolicy previously, the summary (in a list of three lines) was presented after entering an opcode and before showing the longer privacy policy for consent To simplify slightly, we add the summary to PrivacyPolicy Also moved scroll from PrivacyPolicy to it's containers to keep the consent button at the bottom of the scroll -- users have to at least scroll past what they're agreeing to --- www/js/control/PrivacyPolicyModal.tsx | 6 ++++-- www/js/join/PrivacyPolicy.tsx | 28 ++++++++++++++++++++------- www/js/onboarding/ConsentPage.tsx | 24 +++++++++++++++++------ 3 files changed, 43 insertions(+), 15 deletions(-) diff --git a/www/js/control/PrivacyPolicyModal.tsx b/www/js/control/PrivacyPolicyModal.tsx index 26dc84343..443b2a548 100644 --- a/www/js/control/PrivacyPolicyModal.tsx +++ b/www/js/control/PrivacyPolicyModal.tsx @@ -1,5 +1,5 @@ import React from "react"; -import { Modal, useWindowDimensions } from "react-native"; +import { Modal, useWindowDimensions, ScrollView } from "react-native"; import { Dialog, Button, useTheme } from 'react-native-paper'; import { useTranslation } from "react-i18next"; import PrivacyPolicy from "../join/PrivacyPolicy"; @@ -17,7 +17,9 @@ const PrivacyPolicyModal = ({ privacyVis, setPrivacyVis }) => { onDismiss={() => setPrivacyVis(false)} style={settingStyles.dialog(colors.elevation.level3)}> - + + + - + + + + + ); } From 77912da73ceec97d1bda37702d1ab39df409c882 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Thu, 21 Sep 2023 10:08:10 -0600 Subject: [PATCH 025/103] name ConsentPage component ConsentPage previously named JoinPage --- www/js/onboarding/ConsentPage.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx index b83f0f8e6..85dac49bf 100644 --- a/www/js/onboarding/ConsentPage.tsx +++ b/www/js/onboarding/ConsentPage.tsx @@ -9,7 +9,7 @@ import { displayError, displayErrorMsg } from '../plugin/logger'; import i18next from "i18next"; import PrivacyPolicy from '../join/PrivacyPolicy'; -const JoinPage = () => { +const ConsentPage = () => { const { t } = useTranslation(); const context = useContext(AppContext); @@ -82,4 +82,4 @@ const s = StyleSheet.create({ }, }); -export default JoinPage; +export default ConsentPage; From eb3bcb8889661ff9ddf2d39842761e1e169f5d69 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Thu, 21 Sep 2023 12:53:26 -0400 Subject: [PATCH 026/103] rework dynamic config 'getConfig' in dynamicConfig.ts is a replacement for the old DynamicConfig.configReady. Once loaded, the config is cached in dynamicConfig.ts as storedConfig, so it doesn't have to be retrieved every time. The useAppConfig is now aware of config changes and will update accordingly - it does so by watching the `configChanged` variable which is exported from dynamicConfig.ts. So anything in React will use the useAppConfig hook. Anything not in React (the remaining Angular services) will need to call `getConfig` directly from dynamicConfig.ts. Eventually, when we have no Angular code, we should be able to just keep the config in the App context, and use it downstream anywhere we'd like - 'loading' has been removed from useAppConfig - instead, the loading state of the config will just be represented by it being null. This way we do not have to watch 2 variables to determine if the config has been loaded --- www/js/App.tsx | 3 +-- www/js/config/dynamicConfig.ts | 28 +++++++++++++++++++++- www/js/config/useImperialConfig.ts | 6 ++--- www/js/control/ProfileSettings.jsx | 2 +- www/js/diary/LabelTab.tsx | 6 ++--- www/js/diary/cards/PlaceCard.tsx | 2 +- www/js/diary/cards/TripCard.tsx | 2 +- www/js/join/PrivacyPolicy.tsx | 4 ++-- www/js/survey/enketo/EnketoModal.tsx | 6 ++--- www/js/survey/enketo/answer.js | 3 ++- www/js/survey/enketo/service.js | 3 ++- www/js/survey/multilabel/multi-label-ui.js | 3 ++- www/js/useAppConfig.ts | 28 ++++++++++++++-------- www/js/usePermissionStatus.ts | 4 ++-- 14 files changed, 68 insertions(+), 32 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index e3dcc5453..658175db6 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -24,7 +24,7 @@ const App = () => { const [index, setIndex] = useState(0); const [pendingOnboardingState, setPendingOnboardingState] = useState(null); const [permissionsPopupVis, setPermissionsPopupVis] = useState(false); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const { colors } = useTheme(); const { t } = useTranslation(); @@ -53,7 +53,6 @@ const App = () => { const appContextValue = { appConfig, - loading, pendingOnboardingState, setPendingOnboardingState, refreshOnboardingState, diff --git a/www/js/config/dynamicConfig.ts b/www/js/config/dynamicConfig.ts index 29fcbc235..2918166e7 100644 --- a/www/js/config/dynamicConfig.ts +++ b/www/js/config/dynamicConfig.ts @@ -1,11 +1,15 @@ import i18next from "i18next"; -import { displayError, logDebug } from "../plugin/logger"; +import { displayError, displayErrorMsg, logDebug } from "../plugin/logger"; import { getAngularService } from "../angular-react-helper"; import { fetchUrlCached } from "../commHelper"; export const CONFIG_PHONE_UI="config/app_ui_config"; export const CONFIG_PHONE_UI_KVSTORE ="CONFIG_PHONE_UI"; +export let storedConfig = null; +export let configChanged = false; +export const setConfigChanged = (b) => configChanged = b; + const _getStudyName = function (connectUrl) { const orig_host = new URL(connectUrl).hostname; const first_domain = orig_host.split(".")[0]; @@ -191,6 +195,8 @@ function loadNewConfig(newToken, existingVersion = null) { return Promise.all([storeConfigPromise, storeInKVStorePromise]).then( ([result, kvStoreResult]) => { logDebug("UI_CONFIG: Stored dynamic config in KVStore successfully, result = " + JSON.stringify(kvStoreResult)); + storedConfig = toSaveConfig; + configChanged = true; return true; }).catch((storeError) => displayError(storeError, i18next.t('config.unable-to-store-config')) @@ -220,3 +226,23 @@ export function resetDataAndRefresh() { return Promise.all([resetNativePromise, resetKVStorePromise]) .then(() => window.location.reload()); } + +export function getConfig() { + if (storedConfig) return Promise.resolve(storedConfig); + const KVStore = getAngularService('KVStore'); + return KVStore.get(CONFIG_PHONE_UI_KVSTORE).then((config) => { + if (config) { + storedConfig = config; + return config; + } + logDebug("No config found in KVStore, fetching from native storage"); + return window['cordova'].plugins.BEMUserCache.getRWDocument(CONFIG_PHONE_UI).then((config) => { + if (config) { + storedConfig = config; + return config; + } + displayErrorMsg(i18next.t('config.unable-read-saved-config')); + return null; + }); + }); +} diff --git a/www/js/config/useImperialConfig.ts b/www/js/config/useImperialConfig.ts index 58af79551..7ad0d37ac 100644 --- a/www/js/config/useImperialConfig.ts +++ b/www/js/config/useImperialConfig.ts @@ -37,13 +37,13 @@ const convertSpeed = (speedMetersPerSec: number, imperial: boolean): number => { } export function useImperialConfig() { - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const [useImperial, setUseImperial] = useState(false); useEffect(() => { - if (loading) return; + if (!appConfig) return; setUseImperial(appConfig.display_config.use_imperial); - }, [appConfig, loading]); + }, [appConfig]); return { distanceSuffix: useImperial ? "mi" : "km", diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 4941dd1e2..bdff83ef8 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -25,7 +25,7 @@ import { resetDataAndRefresh } from "../config/dynamicConfig"; const ProfileSettings = () => { // anything that mutates must go in --- depend on props or state... const { t } = useTranslation(); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const { colors } = useTheme(); //angular services needed diff --git a/www/js/diary/LabelTab.tsx b/www/js/diary/LabelTab.tsx index e5d40dc16..50127841d 100644 --- a/www/js/diary/LabelTab.tsx +++ b/www/js/diary/LabelTab.tsx @@ -29,7 +29,7 @@ const ONE_WEEK = ONE_DAY * 7; // seconds export const LabelTabContext = React.createContext(null); const LabelTab = () => { - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const { t } = useTranslation(); const { colors } = useTheme(); @@ -53,12 +53,12 @@ const LabelTab = () => { // initialization, once the appConfig is loaded useEffect(() => { - if (loading) return; + if (!appConfig) return; const surveyOptKey = appConfig.survey_info['trip-labels']; const surveyOpt = SurveyOptions[surveyOptKey]; setSurveyOpt(surveyOpt); showPlaces = appConfig.survey_info?.buttons?.['place-notes']; - getLabelOptions().then((labelOptions) => setLabelOptions(labelOptions)); + getLabelOptions(appConfig).then((labelOptions) => setLabelOptions(labelOptions)); labelPopulateFactory = getAngularService(surveyOpt.service); const tripSurveyName = appConfig.survey_info?.buttons?.['trip-notes']?.surveyName; const placeSurveyName = appConfig.survey_info?.buttons?.['place-notes']?.surveyName; diff --git a/www/js/diary/cards/PlaceCard.tsx b/www/js/diary/cards/PlaceCard.tsx index 481eab4fb..cd1d9c10e 100644 --- a/www/js/diary/cards/PlaceCard.tsx +++ b/www/js/diary/cards/PlaceCard.tsx @@ -21,7 +21,7 @@ import StartEndLocations from "../components/StartEndLocations"; type Props = { place: {[key: string]: any} }; const PlaceCard = ({ place }: Props) => { - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const { displayStartTime, displayEndTime, displayDate } = useDerivedProperties(place); let [ placeDisplayName ] = useAddressNames(place); diff --git a/www/js/diary/cards/TripCard.tsx b/www/js/diary/cards/TripCard.tsx index 5414b9228..08e02bca4 100644 --- a/www/js/diary/cards/TripCard.tsx +++ b/www/js/diary/cards/TripCard.tsx @@ -29,7 +29,7 @@ const TripCard = ({ trip }: Props) => { const { t } = useTranslation(); const { width: windowWidth } = useWindowDimensions(); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const { displayStartTime, displayEndTime, displayDate, formattedDistance, distanceSuffix, displayTime, detectedModes } = useDerivedProperties(trip); let [ tripStartDisplayName, tripEndDisplayName ] = useAddressNames(trip); diff --git a/www/js/join/PrivacyPolicy.tsx b/www/js/join/PrivacyPolicy.tsx index 713045fb6..f9eb9e66c 100644 --- a/www/js/join/PrivacyPolicy.tsx +++ b/www/js/join/PrivacyPolicy.tsx @@ -8,7 +8,7 @@ import i18next from "i18next"; const PrivacyPolicy = () => { const { t } = useTranslation(); const { colors } = useTheme(); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const getTemplateText = function(configObject) { if (configObject && (configObject.name)) { @@ -195,4 +195,4 @@ const styles = StyleSheet.create({ } }); -export default PrivacyPolicy; \ No newline at end of file +export default PrivacyPolicy; diff --git a/www/js/survey/enketo/EnketoModal.tsx b/www/js/survey/enketo/EnketoModal.tsx index b4bf8f024..d221ae045 100644 --- a/www/js/survey/enketo/EnketoModal.tsx +++ b/www/js/survey/enketo/EnketoModal.tsx @@ -21,7 +21,7 @@ const EnketoModal = ({ surveyName, onResponseSaved, opts, ...rest } : Props) => const headerEl = useRef(null); const surveyJson = useRef(null); const enketoForm = useRef
(null); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); async function fetchSurveyJson(url) { const responseText = await fetchUrlCached(url); @@ -76,9 +76,9 @@ const EnketoModal = ({ surveyName, onResponseSaved, opts, ...rest } : Props) => useEffect(() => { if (!rest.visible) return; - if (!appConfig || loading) return console.error('App config not loaded yet'); + if (!appConfig) return console.error('App config not loaded yet'); initSurvey(); - }, [appConfig, loading, rest.visible]); + }, [appConfig, rest.visible]); /* adapted from the template given by enketo-core: https://github.com/enketo/enketo-core/blob/master/src/index.html */ diff --git a/www/js/survey/enketo/answer.js b/www/js/survey/enketo/answer.js index e93f2e9f4..da77019f9 100644 --- a/www/js/survey/enketo/answer.js +++ b/www/js/survey/enketo/answer.js @@ -1,5 +1,6 @@ import angular from 'angular'; import MessageFormat from 'messageformat'; +import { getConfig } from '../../config/dynamicConfig'; angular.module('emission.survey.enketo.answer', [ 'ionic', @@ -96,7 +97,7 @@ angular.module('emission.survey.enketo.answer', [ if (_config !== undefined) { return Promise.resolve(_config); } - return DynamicConfig.configReady().then((newConfig) => { + return getConfig().then((newConfig) => { Logger.log("Resolved UI_CONFIG_READY promise in answer.js, filling in templates"); _config = newConfig.survey_info.surveys; return _config; diff --git a/www/js/survey/enketo/service.js b/www/js/survey/enketo/service.js index e1192ce7d..2c53fb2e3 100644 --- a/www/js/survey/enketo/service.js +++ b/www/js/survey/enketo/service.js @@ -1,6 +1,7 @@ import angular from 'angular'; import { Form } from 'enketo-core'; import { XMLParser } from 'fast-xml-parser'; +import { getConfig } from '../../config/dynamicConfig'; angular.module('emission.survey.enketo.service', [ 'ionic', @@ -53,7 +54,7 @@ angular.module('emission.survey.enketo.service', [ if (_state.config !== null) { return Promise.resolve(_state.config); } - return DynamicConfig.configReady().then((newConfig) => { + return getConfig().then((newConfig) => { Logger.log("Resolved UI_CONFIG_READY promise in service.js, filling in templates"); _state.config = newConfig.survey_info.surveys; return newConfig; diff --git a/www/js/survey/multilabel/multi-label-ui.js b/www/js/survey/multilabel/multi-label-ui.js index da77586c0..232fe7bee 100644 --- a/www/js/survey/multilabel/multi-label-ui.js +++ b/www/js/survey/multilabel/multi-label-ui.js @@ -1,5 +1,6 @@ import angular from 'angular'; import { baseLabelInputDetails, getBaseLabelInputs, getFakeEntry, getLabelInputDetails, getLabelInputs, getLabelOptions } from './confirmHelper'; +import { getConfig } from '../../config/dynamicConfig'; angular.module('emission.survey.multilabel.buttons', ['emission.stats.clientstats', @@ -18,7 +19,7 @@ angular.module('emission.survey.multilabel.buttons', $ionicPlatform.ready().then(function() { Logger.log("UI_CONFIG: about to call configReady function in MultiLabelService"); - DynamicConfig.configReady().then((newConfig) => { + getConfig().then((newConfig) => { mls.init(newConfig); }).catch((err) => Logger.displayError("Error while handling config in MultiLabelService", err)); }); diff --git a/www/js/useAppConfig.ts b/www/js/useAppConfig.ts index e0a7e14d5..633069326 100644 --- a/www/js/useAppConfig.ts +++ b/www/js/useAppConfig.ts @@ -1,24 +1,32 @@ import { useEffect, useState } from "react"; import { getAngularService } from "./angular-react-helper" +import { configChanged, getConfig, setConfigChanged } from "./config/dynamicConfig"; +import { logDebug } from "./plugin/logger"; const useAppConfig = () => { - const [appConfig, setAppConfig] = useState({}); - const [loading, setLoading] = useState(true); - - const DynamicConfig = getAngularService('DynamicConfig'); + const [appConfig, setAppConfig] = useState(null); const $ionicPlatform = getAngularService('$ionicPlatform'); useEffect(() => { - $ionicPlatform.ready().then(() => { - DynamicConfig.configReady().then((config) => { + $ionicPlatform.ready().then(updateConfig); + }, []); + + function updateConfig() { + return getConfig().then((config) => { + if (Object.keys(config).length) { setAppConfig(config); - setLoading(false); - }); + } else { + logDebug('Config was empty, treating as null'); + setAppConfig(null); + } }); - }, []); + } - return {appConfig, loading}; + if (configChanged) { + updateConfig().then(() => setConfigChanged(false)); + } + return appConfig; } export default useAppConfig; diff --git a/www/js/usePermissionStatus.ts b/www/js/usePermissionStatus.ts index f39627201..30628d045 100644 --- a/www/js/usePermissionStatus.ts +++ b/www/js/usePermissionStatus.ts @@ -17,7 +17,7 @@ const usePermissionStatus = () => { const { t } = useTranslation(); const { colors } = useTheme(); - const { appConfig, loading } = useAppConfig(); + const appConfig = useAppConfig(); const [osver, setOsver] = useState(0); const [platform, setPlatform] = useState(""); @@ -368,4 +368,4 @@ const usePermissionStatus = () => { return {checkList, overallStatus, error, errorVis, setErrorVis, explanationList}; } - export default usePermissionStatus; \ No newline at end of file + export default usePermissionStatus; From 102f12350b1ed57bd3c1cbf55531c01045e330c8 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Thu, 21 Sep 2023 13:53:11 -0400 Subject: [PATCH 027/103] add loadPreviousResponseForSurvey This function in enketoHelper replaces `loadPriorDemographicSurvey` from EnketoDemographicsService. It is only used for demographics survey, but I rewrote it more generically to accept any datakey as a parameter. --- www/js/control/DemographicsSettingRow.jsx | 9 +++---- www/js/survey/enketo/enketo-demographics.js | 26 --------------------- www/js/survey/enketo/enketoHelper.ts | 20 ++++++++++++++++ 3 files changed, 25 insertions(+), 30 deletions(-) diff --git a/www/js/control/DemographicsSettingRow.jsx b/www/js/control/DemographicsSettingRow.jsx index ff91d0921..892f35a7b 100644 --- a/www/js/control/DemographicsSettingRow.jsx +++ b/www/js/control/DemographicsSettingRow.jsx @@ -1,16 +1,17 @@ import React from "react"; import { getAngularService } from "../angular-react-helper"; import SettingRow from "./SettingRow"; +import { loadPreviousResponseForSurvey } from "../survey/enketo/enketoHelper"; + +const DEMOGRAPHIC_SURVEY_DATAKEY = "manual/demographic_survey"; const DemographicsSettingRow = ({ }) => { - const EnketoDemographicsService = getAngularService('EnketoDemographicsService'); const EnketoSurveyLaunch = getAngularService('EnketoSurveyLaunch'); const $rootScope = getAngularService('$rootScope'); - // copied from /js/survey/enketo/enketo-demographics.js function openPopover() { - return EnketoDemographicsService.loadPriorDemographicSurvey().then((lastSurvey) => { + return loadPreviousResponseForSurvey(DEMOGRAPHIC_SURVEY_DATAKEY).then((lastSurvey) => { return EnketoSurveyLaunch .launch($rootScope, 'UserProfileSurvey', { prefilledSurveyResponse: lastSurvey?.data?.xmlResponse, @@ -26,4 +27,4 @@ const DemographicsSettingRow = ({ }) => { textKey="control.edit-demographics" isToggle={false} /> }; -export default DemographicsSettingRow; \ No newline at end of file +export default DemographicsSettingRow; diff --git a/www/js/survey/enketo/enketo-demographics.js b/www/js/survey/enketo/enketo-demographics.js index 06d461fac..61635cddc 100644 --- a/www/js/survey/enketo/enketo-demographics.js +++ b/www/js/survey/enketo/enketo-demographics.js @@ -121,30 +121,4 @@ angular.module('emission.survey.enketo.demographics', } $ionicPlatform.ready(() => $scope.init()); -}) -.factory("EnketoDemographicsService", function(UnifiedDataLoader, $window, $ionicLoading) { - var eds = {}; - console.log("Creating EnketoDemographicsService"); - eds.key = "manual/demographic_survey"; - - var _getMostRecent = function(answers) { - answers.sort((a, b) => a.metadata.write_ts < b.metadata.write_ts); - console.log("first answer is ", answers[0], " last answer is ", answers[answers.length-1]); - return answers[0]; - } - - /* - * We retrieve all the records every time instead of caching because of the - * usage pattern. We assume that the demographic survey is edited fairly - * rarely, so loading it every time will likely do a bunch of unnecessary work. - * Loading it on demand seems like the way to go. If we choose to experiment - * with incremental updates, we may want to revisit this. - */ - eds.loadPriorDemographicSurvey = function() { - const tq = $window.cordova.plugins.BEMUserCache.getAllTimeQuery(); - return UnifiedDataLoader.getUnifiedMessagesForInterval(eds.key, tq) - .then(answers => _getMostRecent(answers)) - } - - return eds; }); diff --git a/www/js/survey/enketo/enketoHelper.ts b/www/js/survey/enketo/enketoHelper.ts index 398a2ed97..aeb6883b3 100644 --- a/www/js/survey/enketo/enketoHelper.ts +++ b/www/js/survey/enketo/enketoHelper.ts @@ -90,3 +90,23 @@ export function saveResponse(surveyName: string, enketoForm: Form, appConfig, op .then(() => data); }).then(data => data); } + +const _getMostRecent = (answers) => { + answers.sort((a, b) => a.metadata.write_ts < b.metadata.write_ts); + console.log("first answer is ", answers[0], " last answer is ", answers[answers.length-1]); + return answers[0]; +} + +/* + * We retrieve all the records every time instead of caching because of the + * usage pattern. We assume that the demographic survey is edited fairly + * rarely, so loading it every time will likely do a bunch of unnecessary work. + * Loading it on demand seems like the way to go. If we choose to experiment + * with incremental updates, we may want to revisit this. +*/ +export function loadPreviousResponseForSurvey(dataKey: string) { + const UnifiedDataLoader = getAngularService('UnifiedDataLoader'); + const tq = window['cordova'].plugins.BEMUserCache.getAllTimeQuery(); + return UnifiedDataLoader.getUnifiedMessagesForInterval(dataKey, tq) + .then(answers => _getMostRecent(answers)) +} From 316dbf80305a1aee78bb50ca17a38540eb4bb394 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Thu, 21 Sep 2023 14:05:27 -0400 Subject: [PATCH 028/103] use EnketoModal in DemographicsSettingRow instead of using the old Angular service, EnketoSurveyLaunch, to edit a demographic survey reponse, we can utilize the EnketoModal React component. We just have to make sure we retrieve the previous response and store it as state before we make the EnketoModal visible --- www/js/control/DemographicsSettingRow.jsx | 33 +++++++++++++---------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/www/js/control/DemographicsSettingRow.jsx b/www/js/control/DemographicsSettingRow.jsx index 892f35a7b..2f3c9cfba 100644 --- a/www/js/control/DemographicsSettingRow.jsx +++ b/www/js/control/DemographicsSettingRow.jsx @@ -1,30 +1,35 @@ -import React from "react"; -import { getAngularService } from "../angular-react-helper"; +import React, { useState } from "react"; import SettingRow from "./SettingRow"; import { loadPreviousResponseForSurvey } from "../survey/enketo/enketoHelper"; +import EnketoModal from "../survey/enketo/EnketoModal"; +const DEMOGRAPHIC_SURVEY_NAME = "UserProfileSurvey"; const DEMOGRAPHIC_SURVEY_DATAKEY = "manual/demographic_survey"; const DemographicsSettingRow = ({ }) => { - const EnketoSurveyLaunch = getAngularService('EnketoSurveyLaunch'); - const $rootScope = getAngularService('$rootScope'); + const [surveyModalVisible, setSurveyModalVisible] = useState(false); + const [prevSurveyResponse, setPrevSurveyResponse] = useState(null); function openPopover() { return loadPreviousResponseForSurvey(DEMOGRAPHIC_SURVEY_DATAKEY).then((lastSurvey) => { - return EnketoSurveyLaunch - .launch($rootScope, 'UserProfileSurvey', { - prefilledSurveyResponse: lastSurvey?.data?.xmlResponse, - showBackButton: true, showFormFooterJumpNav: true - }) - .then(result => { - console.log("demographic survey result ", result); - }); + if (lastSurvey?.data?.xmlResponse) { + setPrevSurveyResponse(lastSurvey.data.xmlResponse); + setSurveyModalVisible(true); + } }); } - return + return (<> + + setSurveyModalVisible(false)} + onResponseSaved={() => setSurveyModalVisible(false)} surveyName={DEMOGRAPHIC_SURVEY_NAME} + opts={{ + prefilledSurveyResponse: prevSurveyResponse, + dataKey: DEMOGRAPHIC_SURVEY_DATAKEY, + }} /> + ); }; export default DemographicsSettingRow; From 3dabbd07c3b3d484532cc24b5c3703c10bda419e Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Thu, 21 Sep 2023 15:54:28 -0400 Subject: [PATCH 029/103] add SurveyPage to onboarding This page will show if the user has consented, but intro has not been marked as done yet. It will look for a previous response for the user. If it finds one, it will ask them whether they wish to edit it or skip. If it doesn't find one, it will open the demographics survey to be completed. --- www/js/control/DemographicsSettingRow.jsx | 4 +- www/js/onboarding/OnboardingStack.tsx | 8 +-- www/js/onboarding/SurveyPage.tsx | 65 +++++++++++++++++++++++ www/js/onboarding/onboardingHelper.ts | 21 +++++++- 4 files changed, 91 insertions(+), 7 deletions(-) create mode 100644 www/js/onboarding/SurveyPage.tsx diff --git a/www/js/control/DemographicsSettingRow.jsx b/www/js/control/DemographicsSettingRow.jsx index 2f3c9cfba..be02dd6d3 100644 --- a/www/js/control/DemographicsSettingRow.jsx +++ b/www/js/control/DemographicsSettingRow.jsx @@ -3,8 +3,8 @@ import SettingRow from "./SettingRow"; import { loadPreviousResponseForSurvey } from "../survey/enketo/enketoHelper"; import EnketoModal from "../survey/enketo/EnketoModal"; -const DEMOGRAPHIC_SURVEY_NAME = "UserProfileSurvey"; -const DEMOGRAPHIC_SURVEY_DATAKEY = "manual/demographic_survey"; +export const DEMOGRAPHIC_SURVEY_NAME = "UserProfileSurvey"; +export const DEMOGRAPHIC_SURVEY_DATAKEY = "manual/demographic_survey"; const DemographicsSettingRow = ({ }) => { diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index bbf475cb1..ae06335ce 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -2,13 +2,13 @@ import React, { useContext } from "react"; import { AppContext } from "../App"; import JoinPage from "./JoinPage"; import ConsentPage from "./ConsentPage"; +import SurveyPage from "./SurveyPage"; // true if loading/undetermined // 'join' if no config present // 'consent' if config present, but not consented -// 'permissions' if consented but not granted permissions -// 'survey' if granted permissions but not completed survey -// null if all done +// 'survey' if consented but intro not done +// null if intro done const OnboardingStack = () => { const { pendingOnboardingState } = useContext(AppContext); @@ -19,6 +19,8 @@ const OnboardingStack = () => { return ; } else if (pendingOnboardingState.route == 'consent') { return ; + } else if (pendingOnboardingState.route == 'survey') { + return ; } else { return 'TODO' } diff --git a/www/js/onboarding/SurveyPage.tsx b/www/js/onboarding/SurveyPage.tsx new file mode 100644 index 000000000..a84ca06f3 --- /dev/null +++ b/www/js/onboarding/SurveyPage.tsx @@ -0,0 +1,65 @@ +import React, { useState, useEffect, useContext } from "react"; +import { StyleSheet } from "react-native"; +import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; +import EnketoModal from "../survey/enketo/EnketoModal"; +import { DEMOGRAPHIC_SURVEY_DATAKEY, DEMOGRAPHIC_SURVEY_NAME } from "../control/DemographicsSettingRow"; +import { loadPreviousResponseForSurvey } from "../survey/enketo/enketoHelper"; +import { AppContext } from "../App"; +import { markIntroDone } from "./onboardingHelper"; + +const SurveyPage = () => { + + const { refreshOnboardingState } = useContext(AppContext); + const [surveyModalVisible, setSurveyModalVisible] = useState(false); + const [prevSurveyResponse, setPrevSurveyResponse] = useState(null); + + useEffect(() => { + loadPreviousResponseForSurvey(DEMOGRAPHIC_SURVEY_DATAKEY).then((lastSurvey) => { + if (lastSurvey?.data?.xmlResponse) { + setPrevSurveyResponse(lastSurvey.data.xmlResponse); + } else { + setSurveyModalVisible(true); + } + }); + }, []); + + function onFinish() { + setSurveyModalVisible(false); + markIntroDone(); + refreshOnboardingState(); + } + + return (<> + + {prevSurveyResponse ? <> + + {'Found previous survey response. Edit?'} + + + + + : + + } + + setSurveyModalVisible(false)} + onResponseSaved={onFinish} surveyName={DEMOGRAPHIC_SURVEY_NAME} + opts={{ + prefilledSurveyResponse: prevSurveyResponse, + dataKey: DEMOGRAPHIC_SURVEY_DATAKEY, + }} /> + ); +}; + +const s = StyleSheet.create({ + page: { + flex: 1, + paddingHorizontal: 15, + }, +}); + +export default SurveyPage; diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index aeb2ebae8..6dd5339b5 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -1,17 +1,23 @@ +import { DateTime } from "luxon"; import { getAngularService } from "../angular-react-helper"; +export const INTRO_DONE_KEY = 'intro_done'; + type OnboardingRoute = 'join' | 'consent' | false; export type OnboardingState = { opcode: string, route: OnboardingRoute, } + export function getPendingOnboardingState(): Promise { - return Promise.all([readConfig(), readConsented()]).then(([config, is_consented]) => { + return Promise.all([readConfig(), readConsented(), readIntroDone()]).then(([config, isConsented, isIntroDone]) => { let route; if (!config) { route = 'join'; - } else if (!is_consented) { + } else if (!isConsented) { route = 'consent'; + } else if (!isIntroDone) { + route = 'survey'; } else { return null; // onboarding is done; no pending state } @@ -28,3 +34,14 @@ async function readConsented() { const StartPrefs = getAngularService('StartPrefs'); return StartPrefs.readConsentState().then(StartPrefs.isConsented) as Promise; } + +async function readIntroDone() { + const KVStore = getAngularService('KVStore'); + return KVStore.get(INTRO_DONE_KEY).then((read_val) => !!read_val) as Promise; +} + +export async function markIntroDone() { + const currDateTime = DateTime.now().toISO(); + const KVStore = getAngularService('KVStore'); + return KVStore.set(INTRO_DONE_KEY, currDateTime); +} From 24bdf3ae3bc7272fd66e1cde468d6bf3d76ba103 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Thu, 21 Sep 2023 14:36:36 -0600 Subject: [PATCH 030/103] trap users on permissions if the permissions are broken, the app won't work, so we should force the users to enable them before they can move on. We'll trap users in the modal until they resolve all the permissions bu making it only dismissable iff overall status is true. --- www/js/control/AppStatusModal.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/www/js/control/AppStatusModal.tsx b/www/js/control/AppStatusModal.tsx index e73290a45..20416d206 100644 --- a/www/js/control/AppStatusModal.tsx +++ b/www/js/control/AppStatusModal.tsx @@ -27,8 +27,12 @@ const AppStatusModal = ({permitVis, setPermitVis }) => { }, [permitVis]); return ( - setPermitVis(false)} transparent={true}> + { + if(overallStatus){(setPermitVis(false))} + }} + transparent={true}> setPermitVis(false)} style={settingStyles.dialog(colors.elevation.level3)}> From e25a4ff1660468781cd142a5aab01b18d88c9c57 Mon Sep 17 00:00:00 2001 From: Abby Wheelis Date: Thu, 21 Sep 2023 14:38:38 -0600 Subject: [PATCH 031/103] usePermissions tripping over state the state for platform and osver was not updating in time to set up the checklist. Rather than rely on state, we can get the information directly from window. We know it will exist because setup is not called until window[device] exists see discussion:https://github.com/e-mission/e-mission-docs/issues/956#issuecomment-1730259966 --- www/js/usePermissionStatus.ts | 42 +++++++++++++++-------------------- 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/www/js/usePermissionStatus.ts b/www/js/usePermissionStatus.ts index 30628d045..139077c36 100644 --- a/www/js/usePermissionStatus.ts +++ b/www/js/usePermissionStatus.ts @@ -101,17 +101,17 @@ const usePermissionStatus = () => { return checkOrFix(locPermissionsCheck, window['cordova'].plugins.BEMDataCollection.isValidLocationPermissions, false); }; var androidSettingsDescTag = "intro.appstatus.locsettings.description.android-gte-9"; - if (osver < 9) { + if (window['device'].version.split(".")[0] < 9) { androidSettingsDescTag = "intro.appstatus.locsettings.description.android-lt-9"; } var androidPermDescTag = "intro.appstatus.locperms.description.android-gte-12"; - if(osver < 6) { + if(window['device'].version.split(".")[0] < 6) { androidPermDescTag = 'intro.appstatus.locperms.description.android-lt-6'; - } else if (osver < 10) { + } else if (window['device'].version.split(".")[0] < 10) { androidPermDescTag = "intro.appstatus.locperms.description.android-6-9"; - } else if (osver < 11) { + } else if (window['device'].version.split(".")[0] < 11) { androidPermDescTag= "intro.appstatus.locperms.description.android-10"; - } else if (osver < 12) { + } else if (window['device'].version.split(".")[0] < 12) { androidPermDescTag= "intro.appstatus.locperms.description.android-11"; } console.log("description tags are "+androidSettingsDescTag+" "+androidPermDescTag); @@ -158,7 +158,7 @@ const usePermissionStatus = () => { }; var iOSSettingsDescTag = "intro.appstatus.locsettings.description.ios"; var iOSPermDescTag = "intro.appstatus.locperms.description.ios-gte-13"; - if(osver < 13) { + if(window['device'].version.split(".")[0] < 13) { iOSPermDescTag = 'intro.appstatus.locperms.description.ios-lt-13'; } console.log("description tags are "+iOSSettingsDescTag+" "+iOSPermDescTag); @@ -183,7 +183,7 @@ const usePermissionStatus = () => { } function setupAndroidFitnessChecks() { - if(osver >= 10){ + if(window['device'].version.split(".")[0] >= 10){ let fixPerms = function() { console.log("fix and refresh fitness permissions"); return checkOrFix(fitnessPermissionsCheck, window['cordova'].plugins.BEMDataCollection.fixFitnessPermissions, @@ -274,10 +274,10 @@ const usePermissionStatus = () => { false); }; var androidUnusedDescTag = "intro.appstatus.unusedapprestrict.description.android-disable-gte-13"; - if (osver == 12) { + if (window['device'].version.split(".")[0] == 12) { androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-12"; } - else if (osver < 12) { + else if (window['device'].version.split(".")[0] < 12) { androidUnusedDescTag= "intro.appstatus.unusedapprestrict.description.android-disable-lt-12"; } let unusedAppsUnrestrictedCheck = { @@ -302,9 +302,9 @@ const usePermissionStatus = () => { let overallFitnessName = t('intro.appstatus.overall-fitness-name-android'); let locExplanation = t('intro.appstatus.overall-loc-description'); - if(platform == "ios") { + if(window['device'].platform.toLowerCase() == "ios") { overallFitnessName = t('intro.appstatus.overall-fitness-name-ios'); - if(osver < 13) { + if(window['device'].version.split(".")[0] < 13) { locExplanation = (t("intro.permissions.locationPermExplanation-ios-lt-13")); } else { locExplanation = (t("intro.permissions.locationPermExplanation-ios-gte-13")); @@ -323,12 +323,12 @@ const usePermissionStatus = () => { } function createChecklist(){ - if(platform == "android") { + if(window['device'].platform.toLowerCase() == "android") { setupAndroidLocChecks(); setupAndroidFitnessChecks(); setupAndroidNotificationChecks(); setupAndroidBackgroundRestrictionChecks(); - } else if (platform == "ios") { + } else if (window['device'].platform.toLowerCase() == "ios") { setupIOSLocChecks(); setupIOSFitnessChecks(); setupAndroidNotificationChecks(); @@ -351,17 +351,11 @@ const usePermissionStatus = () => { if (appConfig && window['device']?.platform) { setPlatform(window['device'].platform.toLowerCase()); setOsver(window['device'].version.split(".")[0]); - - if(!haveSetText) - { - //window.appStatusModalOpened = false; - setupPermissionText(); - setHaveSetText(true); - } - else{ - console.log("setting up permissions"); - createChecklist(); - } + + setupPermissionText(); + setHaveSetText(true); + console.log("setting up permissions"); + createChecklist(); } }, [appConfig]); From 1bb4f21ca3ad2f3bfb7758f58425f3d6317a4265 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 12:10:57 -0400 Subject: [PATCH 032/103] use only the app-wide AppStatusModal Since we have an AppStatusModal, and we have an AppContext to share variables throughout the component tree, we don't need a separate AppStatusModal in ProfileSettings. The "App Status" action can just control the state of the AppStatusModal in the App component. We also now don't need the extra code about `window.appStatusModalOpened`. This was to prevent two modals from being open at the same time, but since we only include the modal in one place now, we don't have to keep track of this. --- www/js/App.tsx | 5 ++--- www/js/control/AppStatusModal.tsx | 20 ++++++-------------- www/js/control/ProfileSettings.jsx | 10 ++++------ 3 files changed, 12 insertions(+), 23 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index 658175db6..674fc4513 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -53,9 +53,8 @@ const App = () => { const appContextValue = { appConfig, - pendingOnboardingState, - setPendingOnboardingState, - refreshOnboardingState, + pendingOnboardingState, setPendingOnboardingState, refreshOnboardingState, + permissionsPopupVis, setPermissionsPopupVis, } console.debug('pendingOnboardingState in App', pendingOnboardingState); diff --git a/www/js/control/AppStatusModal.tsx b/www/js/control/AppStatusModal.tsx index 20416d206..0a7ee85db 100644 --- a/www/js/control/AppStatusModal.tsx +++ b/www/js/control/AppStatusModal.tsx @@ -6,25 +6,17 @@ import usePermissionStatus from "../usePermissionStatus"; import { settingStyles } from "./ProfileSettings"; //TODO -- import settings styles for dialog -const AppStatusModal = ({permitVis, setPermitVis }) => { +const AppStatusModal = ({ permitVis, setPermitVis }) => { const { height: windowHeight } = useWindowDimensions(); const { overallStatus } = usePermissionStatus(); const { colors } = useTheme(); //anytime the status changes, may need to show modal useEffect(() => { - let currentlyOpen = window?.appStatusModalOpened; - if(!currentlyOpen && overallStatus == false) { //trying to block early cases from throwing modal - window.appStatusModalOpened = true; - setPermitVis(true); - } - }, [overallStatus]); - - useEffect (() => { - if(!permitVis) { - window.appStatusModalOpened = false; - } - }, [permitVis]); + if(!overallStatus) { + setPermitVis(true); + } + }, [overallStatus]); return ( { @@ -44,4 +36,4 @@ const AppStatusModal = ({permitVis, setPermitVis }) => { ) } -export default AppStatusModal; \ No newline at end of file +export default AppStatusModal; diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index bdff83ef8..14a30c332 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from "react"; +import React, { useState, useEffect, useContext } from "react"; import { Modal, StyleSheet, ScrollView } from "react-native"; import { Dialog, Button, useTheme, Text, Appbar, IconButton } from "react-native-paper"; import { angularize, getAngularService } from "../angular-react-helper"; @@ -20,6 +20,7 @@ import LogPage from "./LogPage"; import ControlSyncHelper, {ForceSyncRow, getHelperSyncSettings} from "./ControlSyncHelper"; import ControlCollectionHelper, {getHelperCollectionSettings, getState, isMediumAccuracy, helperToggleLowAccuracy, forceTransition} from "./ControlCollectionHelper"; import { resetDataAndRefresh } from "../config/dynamicConfig"; +import { AppContext } from "../App"; //any pure functions can go outside const ProfileSettings = () => { @@ -27,6 +28,7 @@ const ProfileSettings = () => { const { t } = useTranslation(); const appConfig = useAppConfig(); const { colors } = useTheme(); + const { setPermissionsPopupVis } = useContext(AppContext); //angular services needed const CarbonDatasetHelper = getAngularService('CarbonDatasetHelper'); @@ -48,7 +50,6 @@ const ProfileSettings = () => { const [nukeSetVis, setNukeVis] = useState(false); const [carbonDataVis, setCarbonDataVis] = useState(false); const [forceStateVis, setForceStateVis] = useState(false); - const [permitVis, setPermitVis] = useState(false); const [logoutVis, setLogoutVis] = useState(false); const [invalidateSuccessVis, setInvalidateSuccessVis] = useState(false); const [noConsentVis, setNoConsentVis] = useState(false); @@ -381,7 +382,7 @@ const ProfileSettings = () => { setPrivacyVis(true)}> {timePicker} - setPermitVis(true)}> + setPermissionsPopupVis(true)}> setCarbonDataVis(true)}> setDateDumpVis(true)}> @@ -443,9 +444,6 @@ const ProfileSettings = () => { {/* opcode viewing popup */} - {/* {view permissions} */} - - {/* {view privacy} */} From 4b62fed712d0bd3a1ff78e24fceeb94e62354d82 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 12:58:10 -0400 Subject: [PATCH 033/103] add template for SaveQrPage The SaveQrPage, where we prompt users to save their OpCode by downloading the QR image, needs to show after the user consents but before the demographics survey This required adding another option for the onboardingState and a flag to signify whether the SaveQrPage is marked done or not. The SaveQrPage component itself currently just has some sample content - later we will actually show the QR code with an option to save it --- www/js/onboarding/OnboardingStack.tsx | 3 +++ www/js/onboarding/SaveQrPage.tsx | 35 +++++++++++++++++++++++++++ www/js/onboarding/onboardingHelper.ts | 14 +++++++---- 3 files changed, 47 insertions(+), 5 deletions(-) create mode 100644 www/js/onboarding/SaveQrPage.tsx diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index ae06335ce..03863a0f8 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -3,6 +3,7 @@ import { AppContext } from "../App"; import JoinPage from "./JoinPage"; import ConsentPage from "./ConsentPage"; import SurveyPage from "./SurveyPage"; +import SaveQrPage from "./SaveQrPage"; // true if loading/undetermined // 'join' if no config present @@ -19,6 +20,8 @@ const OnboardingStack = () => { return ; } else if (pendingOnboardingState.route == 'consent') { return ; + } else if (pendingOnboardingState.route == 'save-qr') { + return ; } else if (pendingOnboardingState.route == 'survey') { return ; } else { diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx new file mode 100644 index 000000000..00419cc2c --- /dev/null +++ b/www/js/onboarding/SaveQrPage.tsx @@ -0,0 +1,35 @@ +import React, { useContext } from "react"; +import { StyleSheet } from "react-native"; +import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; +import { setSaveQrDone } from "./onboardingHelper"; +import { AppContext } from "../App"; + +const SaveQrPage = ({ }) => { + + const { refreshOnboardingState } = useContext(AppContext); + + function onFinish() { + setSaveQrDone(true); + refreshOnboardingState(); + } + + return ( + + + {'Save your QR Code'} + + + + ); +} + +const s = StyleSheet.create({ + page: { + flex: 1, + paddingHorizontal: 15, + }, +}); + +export default SaveQrPage; diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index 6dd5339b5..3a1e4bbb3 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -3,23 +3,27 @@ import { getAngularService } from "../angular-react-helper"; export const INTRO_DONE_KEY = 'intro_done'; -type OnboardingRoute = 'join' | 'consent' | false; +type OnboardingRoute = 'join' | 'consent' | 'survey' | 'save-qr' | false; export type OnboardingState = { opcode: string, route: OnboardingRoute, } +export let saveQrDone = false; +export const setSaveQrDone = (b) => saveQrDone = b; + export function getPendingOnboardingState(): Promise { return Promise.all([readConfig(), readConsented(), readIntroDone()]).then(([config, isConsented, isIntroDone]) => { - let route; + if (isIntroDone) return null; // onboarding is done; no pending state + let route: OnboardingRoute = false; if (!config) { route = 'join'; } else if (!isConsented) { route = 'consent'; - } else if (!isIntroDone) { - route = 'survey'; + } else if (!saveQrDone) { + route = 'save-qr'; } else { - return null; // onboarding is done; no pending state + route = 'survey'; } return { route, opcode: config?.joined?.opcode }; }); From 64daf88229e1623020e30ca98f92ccc5d24c62f9 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 22:49:09 -0400 Subject: [PATCH 034/103] only register user after permissions done Instead of the login function being called when the user consents on ConsentPage, we should login only once the permissions are sorted and we are on the SaveQrPage. This prevents the possibility of so-called 'ghost users' who downloaded the app, consented, but quit before giving permissions. We'd prefer to not have a buildup of these empty opcodes registered on the server. To do this we have a new flag in onboardingHelper, 'registerUserDone', and we listen in SaveQrPage for appStatus to be true. If it is, and we haven't already registerUserDone, we call the login function to register. --- www/js/onboarding/ConsentPage.tsx | 35 +++++------------------- www/js/onboarding/SaveQrPage.tsx | 39 ++++++++++++++++++++++++--- www/js/onboarding/onboardingHelper.ts | 3 +++ 3 files changed, 45 insertions(+), 32 deletions(-) diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx index 85dac49bf..3f9754b48 100644 --- a/www/js/onboarding/ConsentPage.tsx +++ b/www/js/onboarding/ConsentPage.tsx @@ -1,11 +1,10 @@ -import React, { useContext, useState, useMemo } from 'react'; +import React, { useContext, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { View, Image, Modal, StyleSheet, ScrollView } from 'react-native'; -import { Button, Dialog, Divider, Surface, Text, TextInput, List } from 'react-native-paper'; -import { initByUser, resetDataAndRefresh } from '../config/dynamicConfig'; +import { StyleSheet, ScrollView } from 'react-native'; +import { Button, Surface } from 'react-native-paper'; +import { resetDataAndRefresh } from '../config/dynamicConfig'; import { AppContext } from '../App'; import { getAngularService } from '../angular-react-helper'; -import { displayError, displayErrorMsg } from '../plugin/logger'; import i18next from "i18next"; import PrivacyPolicy from '../join/PrivacyPolicy'; @@ -13,7 +12,7 @@ const ConsentPage = () => { const { t } = useTranslation(); const context = useContext(AppContext); - const { pendingOnboardingState, refreshOnboardingState } = context; + const { refreshOnboardingState } = context; /* If the user does not consent, we boot them back out to the join screen */ function disagree() { @@ -23,29 +22,7 @@ const ConsentPage = () => { function agree() { const StartPrefs = getAngularService('StartPrefs'); StartPrefs.markConsented().then((response) => { - login(pendingOnboardingState.opcode).then((response) => { - - refreshOnboardingState(); - }); - }); - }; - - function login(token) { - const CommHelper = getAngularService('CommHelper'); - const KVStore = getAngularService('KVStore'); - const EXPECTED_METHOD = "prompted-auth"; - const dbStorageObject = {"token": token}; - return KVStore.set(EXPECTED_METHOD, dbStorageObject).then((r) => { - // ionicToast.show(message, position, stick, time); - // $scope.next(); - // ionicToast.show(opcode, 'middle', false, 2500); - CommHelper.registerUser((successResult) => { - refreshOnboardingState(); - }, function(errorResult) { - displayError(errorResult, "User registration error"); - }); - }).catch((e) => { - displayError(e, "Sign in error"); + refreshOnboardingState(); }); }; diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx index 00419cc2c..da1de7660 100644 --- a/www/js/onboarding/SaveQrPage.tsx +++ b/www/js/onboarding/SaveQrPage.tsx @@ -1,12 +1,45 @@ -import React, { useContext } from "react"; +import React, { useContext, useEffect } from "react"; import { StyleSheet } from "react-native"; import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; -import { setSaveQrDone } from "./onboardingHelper"; +import { registerUserDone, setRegisterUserDone, setSaveQrDone } from "./onboardingHelper"; import { AppContext } from "../App"; +import usePermissionStatus from "../usePermissionStatus"; +import { getAngularService } from "../angular-react-helper"; +import { displayError, logDebug } from "../plugin/logger"; const SaveQrPage = ({ }) => { - const { refreshOnboardingState } = useContext(AppContext); + const { pendingOnboardingState, refreshOnboardingState } = useContext(AppContext); + const { overallStatus } = usePermissionStatus(); + + useEffect(() => { + if (overallStatus == true && !registerUserDone) { + logDebug('permissions done, going to log in'); + login(pendingOnboardingState.opcode).then((response) => { + logDebug('login done, refreshing onboarding state'); + setRegisterUserDone(true); + refreshOnboardingState(); + }); + } else { + logDebug('permissions not done, waiting'); + } + }, [overallStatus]); + + function login(token) { + const CommHelper = getAngularService('CommHelper'); + const KVStore = getAngularService('KVStore'); + const EXPECTED_METHOD = "prompted-auth"; + const dbStorageObject = {"token": token}; + return KVStore.set(EXPECTED_METHOD, dbStorageObject).then((r) => { + CommHelper.registerUser((successResult) => { + refreshOnboardingState(); + }, function(errorResult) { + displayError(errorResult, "User registration error"); + }); + }).catch((e) => { + displayError(e, "Sign in error"); + }); + }; function onFinish() { setSaveQrDone(true); diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index 3a1e4bbb3..1a167ec5b 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -12,6 +12,9 @@ export type OnboardingState = { export let saveQrDone = false; export const setSaveQrDone = (b) => saveQrDone = b; +export let registerUserDone = false; +export const setRegisterUserDone = (b) => registerUserDone = b; + export function getPendingOnboardingState(): Promise { return Promise.all([readConfig(), readConsented(), readIntroDone()]).then(([config, isConsented, isIntroDone]) => { if (isIntroDone) return null; // onboarding is done; no pending state From 966bb47b204e3fcb47fcf902ae83ad96f4282b6b Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 22:50:55 -0400 Subject: [PATCH 035/103] fix overallStatus being true before checks loaded When usePermissionStatus is first invoked, checkList is an empty array. Later on it is populated with the necessary checks. But initially there are no checks. In this case, overallStatus would mistakenly be true on the initial load. But if there are no checks, this should return false. --- www/js/usePermissionStatus.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/www/js/usePermissionStatus.ts b/www/js/usePermissionStatus.ts index 139077c36..4aa7a4b3c 100644 --- a/www/js/usePermissionStatus.ts +++ b/www/js/usePermissionStatus.ts @@ -34,6 +34,7 @@ const usePermissionStatus = () => { const overallStatus = useMemo(() => { let status = true; + if (!checkList?.length) return false; // if checks not loaded yet, status is false checkList.forEach((lc) => { if(!lc.statusState){ status = false; From dfe2722174089a257dae7d54f22e99c906f0fcdf Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 23:00:47 -0400 Subject: [PATCH 036/103] move shareQR function to QrCode file We're going to use this function for the onboarding flow. And besides, we don't need it cluttering up ProfileSettings anyway. Probably best to extract it to a general location, and work with any input message. --- www/js/components/QrCode.jsx | 29 +++++++++++++++++++++++++++ www/js/control/ProfileSettings.jsx | 32 ++---------------------------- 2 files changed, 31 insertions(+), 30 deletions(-) diff --git a/www/js/components/QrCode.jsx b/www/js/components/QrCode.jsx index 0084b334f..57edca4af 100644 --- a/www/js/components/QrCode.jsx +++ b/www/js/components/QrCode.jsx @@ -7,6 +7,35 @@ import { angularize } from "../angular-react-helper"; import { string } from "prop-types"; import QRCode from "react-qr-code"; +export function shareQR(message) { + /*code adapted from demo of react-qr-code*/ + const svg = document.querySelector(".qr-code"); + const svgData = new XMLSerializer().serializeToString(svg); + const img = new Image(); + + img.onload = () => { + const canvas = document.createElement("canvas"); + const ctx = canvas.getContext("2d"); + canvas.width = img.width; + canvas.height = img.height; + ctx.drawImage(img, 0, 0); + const pngFile = canvas.toDataURL("image/png"); + + var prepopulateQRMessage = {}; + prepopulateQRMessage.files = [pngFile]; + prepopulateQRMessage.url = message; + prepopulateQRMessage.message = message; //text saved to files with image! + + window.plugins.socialsharing.shareWithOptions(prepopulateQRMessage, function (result) { + console.log("Share completed? " + result.completed); // On Android apps mostly return false even while it's true + console.log("Shared to app: " + result.app); // On Android result.app is currently empty. On iOS it's empty when sharing is cancelled (result.completed=false) + }, function (msg) { + console.log("Sharing failed with message: " + msg); + }); + } + img.src = `data:image/svg+xml;base64,${btoa(svgData)}`; +} + const QrCode = ({ value }) => { return ; }; diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 14a30c332..2e1cb91fd 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -21,6 +21,7 @@ import ControlSyncHelper, {ForceSyncRow, getHelperSyncSettings} from "./ControlS import ControlCollectionHelper, {getHelperCollectionSettings, getState, isMediumAccuracy, helperToggleLowAccuracy, forceTransition} from "./ControlCollectionHelper"; import { resetDataAndRefresh } from "../config/dynamicConfig"; import { AppContext } from "../App"; +import { shareQR } from "../components/QrCode"; //any pure functions can go outside const ProfileSettings = () => { @@ -261,35 +262,6 @@ const ProfileSettings = () => { refreshCollectSettings(); } - const shareQR = function() { - /*code adapted from demo of react-qr-code*/ - const svg = document.querySelector(".qr-code"); - const svgData = new XMLSerializer().serializeToString(svg); - const img = new Image(); - - img.onload = () => { - const canvas = document.createElement("canvas"); - const ctx = canvas.getContext("2d"); - canvas.width = img.width; - canvas.height = img.height; - ctx.drawImage(img, 0, 0); - const pngFile = canvas.toDataURL("image/png"); - - var prepopulateQRMessage = {}; - prepopulateQRMessage.files = [pngFile]; - prepopulateQRMessage.url = authSettings.opcode; - prepopulateQRMessage.message = authSettings.opcode; //text saved to files with image! - - window.plugins.socialsharing.shareWithOptions(prepopulateQRMessage, function(result) { - console.log("Share completed? " + result.completed); // On Android apps mostly return false even while it's true - console.log("Shared to app: " + result.app); // On Android result.app is currently empty. On iOS it's empty when sharing is cancelled (result.completed=false) - }, function(msg) { - console.log("Sharing failed with message: " + msg); - }); - } - img.src = `data:image/svg+xml;base64,${btoa(svgData)}`; - } - const viewQRCode = function(e) { setOpCodeVis(true); } @@ -442,7 +414,7 @@ const ProfileSettings = () => { {}}> {/* opcode viewing popup */} - + shareQR(authSettings.opcode)}> {/* {view privacy} */} From 03496131dc102be867fee5c86ca9a90ce91c3971 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Fri, 22 Sep 2023 23:39:20 -0400 Subject: [PATCH 037/103] show QR code and share btn on SaveQrPage This builds out the SaveQrPage so it actually displays the qr code, with all the text from the old version, and buttons to save/share the qr code and to continue - "rest" / "rest.style" was added to the QrCode component so that it can be styled --- www/js/components/QrCode.jsx | 4 ++-- www/js/onboarding/SaveQrPage.tsx | 32 +++++++++++++++++++++++++------- 2 files changed, 27 insertions(+), 9 deletions(-) diff --git a/www/js/components/QrCode.jsx b/www/js/components/QrCode.jsx index 57edca4af..797fd3580 100644 --- a/www/js/components/QrCode.jsx +++ b/www/js/components/QrCode.jsx @@ -36,8 +36,8 @@ export function shareQR(message) { img.src = `data:image/svg+xml;base64,${btoa(svgData)}`; } -const QrCode = ({ value }) => { - return ; +const QrCode = ({ value, ...rest }) => { + return ; }; QrCode.propTypes = { diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx index da1de7660..a94c8bc7a 100644 --- a/www/js/onboarding/SaveQrPage.tsx +++ b/www/js/onboarding/SaveQrPage.tsx @@ -1,14 +1,17 @@ import React, { useContext, useEffect } from "react"; -import { StyleSheet } from "react-native"; +import { View, StyleSheet } from "react-native"; import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; import { registerUserDone, setRegisterUserDone, setSaveQrDone } from "./onboardingHelper"; import { AppContext } from "../App"; import usePermissionStatus from "../usePermissionStatus"; import { getAngularService } from "../angular-react-helper"; import { displayError, logDebug } from "../plugin/logger"; +import { useTranslation } from "react-i18next"; +import QrCode, { shareQR } from "../components/QrCode"; const SaveQrPage = ({ }) => { + const { t } = useTranslation(); const { pendingOnboardingState, refreshOnboardingState } = useContext(AppContext); const { overallStatus } = usePermissionStatus(); @@ -48,12 +51,22 @@ const SaveQrPage = ({ }) => { return ( - - {'Save your QR Code'} - - + + {t('login.make-sure-save-your-opcode')} + {t('login.cannot-retrieve')} + + + + {pendingOnboardingState.opcode} + + + + + ); } @@ -62,7 +75,12 @@ const s = StyleSheet.create({ page: { flex: 1, paddingHorizontal: 15, + paddingVertical: 20, }, + pageSection: { + marginVertical: 15, + alignItems: 'center', + } }); export default SaveQrPage; From aba240a0da675e7c85e987507c2e2411a0c21f15 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Sat, 23 Sep 2023 00:19:06 -0400 Subject: [PATCH 038/103] SaveQrPage: make buttons outlined/contained We present a pair of buttons: it's often best to give one contained and the other outlined. In this case, the 'recommended' action is to save/share the QR code, so we put this one in a 'contained' style. --- www/js/onboarding/SaveQrPage.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx index a94c8bc7a..2c95d96aa 100644 --- a/www/js/onboarding/SaveQrPage.tsx +++ b/www/js/onboarding/SaveQrPage.tsx @@ -1,4 +1,4 @@ -import React, { useContext, useEffect } from "react"; +import React, { useContext, useEffect, useState } from "react"; import { View, StyleSheet } from "react-native"; import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; import { registerUserDone, setRegisterUserDone, setSaveQrDone } from "./onboardingHelper"; @@ -60,10 +60,10 @@ const SaveQrPage = ({ }) => { {pendingOnboardingState.opcode} - - From a3ea4163c64b7bfdb1d2967ca9f17b9bcc432d75 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Sat, 23 Sep 2023 01:25:48 -0400 Subject: [PATCH 039/103] fill out SurveyPage On SurveyPage, we look for existing surveys for the user. If any exist, we take the most recent one and ask the user if they wish to edit it. This commit fills in all the text explaining this, unifies the button styles with the previous page, adds icons to the buttons, and adds a text field showing the date of the previous response to be edited. --- www/js/onboarding/SurveyPage.tsx | 51 +++++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 14 deletions(-) diff --git a/www/js/onboarding/SurveyPage.tsx b/www/js/onboarding/SurveyPage.tsx index a84ca06f3..69a474a7f 100644 --- a/www/js/onboarding/SurveyPage.tsx +++ b/www/js/onboarding/SurveyPage.tsx @@ -1,17 +1,28 @@ -import React, { useState, useEffect, useContext } from "react"; -import { StyleSheet } from "react-native"; +import React, { useState, useEffect, useContext, useMemo } from "react"; +import { View, StyleSheet } from "react-native"; import { ActivityIndicator, Button, Surface, Text } from "react-native-paper"; import EnketoModal from "../survey/enketo/EnketoModal"; import { DEMOGRAPHIC_SURVEY_DATAKEY, DEMOGRAPHIC_SURVEY_NAME } from "../control/DemographicsSettingRow"; import { loadPreviousResponseForSurvey } from "../survey/enketo/enketoHelper"; import { AppContext } from "../App"; import { markIntroDone } from "./onboardingHelper"; +import { useTranslation } from "react-i18next"; +import { DateTime } from "luxon"; const SurveyPage = () => { + const { t } = useTranslation(); const { refreshOnboardingState } = useContext(AppContext); const [surveyModalVisible, setSurveyModalVisible] = useState(false); const [prevSurveyResponse, setPrevSurveyResponse] = useState(null); + const prevSurveyResponseDate = useMemo(() => { + if (prevSurveyResponse) { + const parser = new DOMParser(); + const xmlDoc = parser.parseFromString(prevSurveyResponse, "text/xml"); + const surveyEndDt = xmlDoc.querySelector('end')?.textContent; // ISO datetime of survey completion + return DateTime.fromISO(surveyEndDt).toLocaleString(DateTime.DATE_FULL); + } + }, [prevSurveyResponse]); useEffect(() => { loadPreviousResponseForSurvey(DEMOGRAPHIC_SURVEY_DATAKEY).then((lastSurvey) => { @@ -32,19 +43,23 @@ const SurveyPage = () => { return (<> {prevSurveyResponse ? <> - - {'Found previous survey response. Edit?'} - - - + {t('survey.prev-survey-found')} + {prevSurveyResponseDate} + + + + - : - - } + : <> + + + {t('survey.loading-prior-survey')} + + } setSurveyModalVisible(false)} onResponseSaved={onFinish} surveyName={DEMOGRAPHIC_SURVEY_NAME} @@ -59,6 +74,14 @@ const s = StyleSheet.create({ page: { flex: 1, paddingHorizontal: 15, + paddingVertical: 20, + }, + buttonRow: { + flexDirection: 'row', + justifyContent: 'center', + alignItems: 'center', + marginVertical: 15, + gap: 8, }, }); From e99ccb5022b24ad2a0ac2a4355b6b56b7a82e72d Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Sat, 23 Sep 2023 01:52:58 -0400 Subject: [PATCH 040/103] unify styles between onboarding pages -Several common styles moved to OnbaordingStack as onboardingStyles, instead of being duplicated on each page -ConsentPage now uses contained / outlined buttons, matching the other pages -Content of SurveyPage is now centered, not cramped towards the top of the screen --- www/js/onboarding/ConsentPage.tsx | 32 ++++++--------- www/js/onboarding/JoinPage.tsx | 6 +-- www/js/onboarding/OnboardingStack.tsx | 20 ++++++++++ www/js/onboarding/SaveQrPage.tsx | 21 +++------- www/js/onboarding/SurveyPage.tsx | 57 +++++++++++---------------- 5 files changed, 62 insertions(+), 74 deletions(-) diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx index 3f9754b48..445de6522 100644 --- a/www/js/onboarding/ConsentPage.tsx +++ b/www/js/onboarding/ConsentPage.tsx @@ -1,12 +1,13 @@ import React, { useContext, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { StyleSheet, ScrollView } from 'react-native'; +import { View, ScrollView } from 'react-native'; import { Button, Surface } from 'react-native-paper'; import { resetDataAndRefresh } from '../config/dynamicConfig'; import { AppContext } from '../App'; import { getAngularService } from '../angular-react-helper'; import i18next from "i18next"; import PrivacyPolicy from '../join/PrivacyPolicy'; +import { onboardingStyles } from './OnboardingStack'; const ConsentPage = () => { @@ -36,27 +37,16 @@ const ConsentPage = () => { //summary of the study, privacy policy, data, etc, and accept/reject return (<> - - - - - - - + + + + + + + + + ); } -const s = StyleSheet.create({ - welcomeTitle: { - marginTop: 20, - textAlign: 'center', - paddingVertical: 20, - fontWeight: '600', - }, - page: { - paddingHorizontal: 15, - flex: 1 - }, -}); - export default ConsentPage; diff --git a/www/js/onboarding/JoinPage.tsx b/www/js/onboarding/JoinPage.tsx index 31849447d..cc06d593a 100644 --- a/www/js/onboarding/JoinPage.tsx +++ b/www/js/onboarding/JoinPage.tsx @@ -4,6 +4,7 @@ import { View, Image, Modal, StyleSheet } from 'react-native'; import { Button, Dialog, Divider, Surface, Text, TextInput } from 'react-native-paper'; import { initByUser } from '../config/dynamicConfig'; import { AppContext } from '../App'; +import { onboardingStyles } from './OnboardingStack'; const JoinPage = () => { @@ -31,7 +32,7 @@ const JoinPage = () => { } return (<> - + {/* */} {t('join.welcome-to-nrel-openpath')} @@ -74,9 +75,6 @@ const s = StyleSheet.create({ paddingVertical: 20, fontWeight: '600', }, - page: { - paddingHorizontal: 15, - }, }); export default JoinPage; diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index 03863a0f8..6c679a107 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -1,4 +1,5 @@ import React, { useContext } from "react"; +import { StyleSheet } from "react-native"; import { AppContext } from "../App"; import JoinPage from "./JoinPage"; import ConsentPage from "./ConsentPage"; @@ -29,4 +30,23 @@ const OnboardingStack = () => { } } +export const onboardingStyles = StyleSheet.create({ + page: { + flex: 1, + paddingHorizontal: 15, + paddingVertical: 20, + }, + pageSection: { + marginVertical: 15, + alignItems: 'center', + }, + buttonRow: { + flexDirection: 'row', + justifyContent: 'center', + marginVertical: 15, + alignItems: 'center', + gap: 8, + }, +}); + export default OnboardingStack diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx index 2c95d96aa..7ca2f4b94 100644 --- a/www/js/onboarding/SaveQrPage.tsx +++ b/www/js/onboarding/SaveQrPage.tsx @@ -8,6 +8,7 @@ import { getAngularService } from "../angular-react-helper"; import { displayError, logDebug } from "../plugin/logger"; import { useTranslation } from "react-i18next"; import QrCode, { shareQR } from "../components/QrCode"; +import { onboardingStyles } from "./OnboardingStack"; const SaveQrPage = ({ }) => { @@ -50,16 +51,16 @@ const SaveQrPage = ({ }) => { } return ( - - + + {t('login.make-sure-save-your-opcode')} {t('login.cannot-retrieve')} - + {pendingOnboardingState.opcode} - + @@ -71,16 +72,4 @@ const SaveQrPage = ({ }) => { ); } -const s = StyleSheet.create({ - page: { - flex: 1, - paddingHorizontal: 15, - paddingVertical: 20, - }, - pageSection: { - marginVertical: 15, - alignItems: 'center', - } -}); - export default SaveQrPage; diff --git a/www/js/onboarding/SurveyPage.tsx b/www/js/onboarding/SurveyPage.tsx index 69a474a7f..63ec78a26 100644 --- a/www/js/onboarding/SurveyPage.tsx +++ b/www/js/onboarding/SurveyPage.tsx @@ -8,6 +8,7 @@ import { AppContext } from "../App"; import { markIntroDone } from "./onboardingHelper"; import { useTranslation } from "react-i18next"; import { DateTime } from "luxon"; +import { onboardingStyles } from "./OnboardingStack"; const SurveyPage = () => { @@ -41,25 +42,30 @@ const SurveyPage = () => { } return (<> - - {prevSurveyResponse ? <> - {t('survey.prev-survey-found')} - {prevSurveyResponseDate} - - - + + {prevSurveyResponse ? + + + {t('survey.prev-survey-found')} + {prevSurveyResponseDate} + + + + + - - : <> - - - {t('survey.loading-prior-survey')} - - } + : + + + + {t('survey.loading-prior-survey')} + + + } setSurveyModalVisible(false)} onResponseSaved={onFinish} surveyName={DEMOGRAPHIC_SURVEY_NAME} @@ -70,19 +76,4 @@ const SurveyPage = () => { ); }; -const s = StyleSheet.create({ - page: { - flex: 1, - paddingHorizontal: 15, - paddingVertical: 20, - }, - buttonRow: { - flexDirection: 'row', - justifyContent: 'center', - alignItems: 'center', - marginVertical: 15, - gap: 8, - }, -}); - export default SurveyPage; From 3f5fa3c956b5da1310cb31610fa3f5e5f12248e1 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Sat, 23 Sep 2023 02:08:11 -0400 Subject: [PATCH 041/103] flip accept / refuse buttons on ConsentPage On the other pages, we have the button/action that takes us forward in the flow placed on the right side, and noted with a 'right chevron', so it's a bit weird to see "Accept" on the left here. (side note- to my understanding the ordering of action buttons in UXD is something that can often go either way, and sometimes different platforms have different recommendations, so for our purposes I suggest we just try to stay consistent within the app and demonstrate the purpose of buttons as clearly as we can through text and style) I think since "Accept" is colored ('contained') style, it is already conveyed as the preferred or 'recommended' action - so including it second does not diminish its presence compared to "Refuse" --- www/js/onboarding/ConsentPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/js/onboarding/ConsentPage.tsx b/www/js/onboarding/ConsentPage.tsx index 445de6522..d87217a5b 100644 --- a/www/js/onboarding/ConsentPage.tsx +++ b/www/js/onboarding/ConsentPage.tsx @@ -41,8 +41,8 @@ const ConsentPage = () => { - + From 3012d2bf189cce3ab95738debc45cd6599285fc6 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Mon, 25 Sep 2023 16:49:54 -0400 Subject: [PATCH 042/103] rename "join" to "welcome" To avoid the JoinPage potentially being confused with the study "join page" on the NREL website, this is being renamed to WelcomePage. The onboarding state values are also renamed accordingly. This way we can unambiguously refer to the "join page" as the web page, and this "welcome page" as the in-app landing page. --- www/js/App.tsx | 2 +- www/js/onboarding/OnboardingStack.tsx | 8 ++++---- www/js/onboarding/{JoinPage.tsx => WelcomePage.tsx} | 4 ++-- www/js/onboarding/onboardingHelper.ts | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) rename www/js/onboarding/{JoinPage.tsx => WelcomePage.tsx} (98%) diff --git a/www/js/App.tsx b/www/js/App.tsx index 674fc4513..c71943f25 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -76,7 +76,7 @@ const App = () => { : } - {(pendingOnboardingState == null || pendingOnboardingState.route != 'join' && pendingOnboardingState.route != 'consent') && + {(pendingOnboardingState == null || pendingOnboardingState.route != 'welcome' && pendingOnboardingState.route != 'consent') && } diff --git a/www/js/onboarding/OnboardingStack.tsx b/www/js/onboarding/OnboardingStack.tsx index 6c679a107..2b9d6dc75 100644 --- a/www/js/onboarding/OnboardingStack.tsx +++ b/www/js/onboarding/OnboardingStack.tsx @@ -1,13 +1,13 @@ import React, { useContext } from "react"; import { StyleSheet } from "react-native"; import { AppContext } from "../App"; -import JoinPage from "./JoinPage"; +import WelcomePage from "./WelcomePage"; import ConsentPage from "./ConsentPage"; import SurveyPage from "./SurveyPage"; import SaveQrPage from "./SaveQrPage"; // true if loading/undetermined -// 'join' if no config present +// 'welcome' if no config present // 'consent' if config present, but not consented // 'survey' if consented but intro not done // null if intro done @@ -17,8 +17,8 @@ const OnboardingStack = () => { console.debug('pendingOnboardingState in OnboardingStack', pendingOnboardingState); - if (pendingOnboardingState.route == 'join') { - return ; + if (pendingOnboardingState.route == 'welcome') { + return ; } else if (pendingOnboardingState.route == 'consent') { return ; } else if (pendingOnboardingState.route == 'save-qr') { diff --git a/www/js/onboarding/JoinPage.tsx b/www/js/onboarding/WelcomePage.tsx similarity index 98% rename from www/js/onboarding/JoinPage.tsx rename to www/js/onboarding/WelcomePage.tsx index cc06d593a..d410bb1f0 100644 --- a/www/js/onboarding/JoinPage.tsx +++ b/www/js/onboarding/WelcomePage.tsx @@ -6,7 +6,7 @@ import { initByUser } from '../config/dynamicConfig'; import { AppContext } from '../App'; import { onboardingStyles } from './OnboardingStack'; -const JoinPage = () => { +const WelcomePage = () => { const { t } = useTranslation(); const context = useContext(AppContext); @@ -77,4 +77,4 @@ const s = StyleSheet.create({ }, }); -export default JoinPage; +export default WelcomePage; diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index 1a167ec5b..b58aca732 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -3,7 +3,7 @@ import { getAngularService } from "../angular-react-helper"; export const INTRO_DONE_KEY = 'intro_done'; -type OnboardingRoute = 'join' | 'consent' | 'survey' | 'save-qr' | false; +type OnboardingRoute = 'welcome' | 'consent' | 'survey' | 'save-qr' | false; export type OnboardingState = { opcode: string, route: OnboardingRoute, @@ -20,7 +20,7 @@ export function getPendingOnboardingState(): Promise { if (isIntroDone) return null; // onboarding is done; no pending state let route: OnboardingRoute = false; if (!config) { - route = 'join'; + route = 'welcome'; } else if (!isConsented) { route = 'consent'; } else if (!saveQrDone) { From e902766684ca77780d528477769c78818d022f85 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Mon, 25 Sep 2023 23:31:34 -0400 Subject: [PATCH 043/103] implement new WelcomePage design Based on the wireframe posted in this issue, https://github.com/e-mission/e-mission-docs/issues/956#issuecomment-1734167858, the Welcome page has been styled and touched up to be more inviting and comprehendable. Text has also been made more user-friendly. The change in webpack.config.js is necessary to be able to load the app icon as an image. Since the icon.png is in 'resource' directory, not in the 'www' directory, webpack did not know to treat it as an asset. By adding 'resources' to the 'include' paths, the image gets bundled correctly and can be imported in WelcomePage.tsx --- webpack.config.js | 1 + www/i18n/en.json | 21 +++-- www/js/onboarding/WelcomePage.tsx | 150 +++++++++++++++++++++++++----- 3 files changed, 141 insertions(+), 31 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index d6e36fb18..1e504ac5f 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -50,6 +50,7 @@ module.exports = { { test: /\.(jpg|png|woff|woff2|eot|ttf|svg)$/, include: [path.resolve(__dirname, 'www'), + path.resolve(__dirname, 'resources'), path.resolve(__dirname, 'node_modules/react-native-vector-icons')], type: 'asset/resource', }, diff --git a/www/i18n/en.json b/www/i18n/en.json index 6cc211804..fde791405 100644 --- a/www/i18n/en.json +++ b/www/i18n/en.json @@ -344,22 +344,23 @@ "enketo-timestamps-invalid": "The times you entered are invalid. Please ensure that the start time is before the end time." }, "join": { - "welcome-to-nrel-openpath": "Welcome to NREL OpenPATH", - "proceed-further": "To proceed further, you need to enter a valid OPcode (token)", - "what-is-opcode": "The OPcode is a long string starting with 'nrelop' that has been provided by your program admin through a website, email, text or printout.", - "or": "or", - "scan-button": "Scan the QR code ", - "scan-details": "The OPcode will be written at the top of the image", - "paste-button": "Paste the OPcode", - "paste-details": "We suggest copy-pasting instead of typing since the OPcode is long and jumbled", + "welcome-to-app": "Welcome to {{appName}}!", + "app-name": "NREL OpenPATH", + "to-proceed-further": "To proceed further, please scan or paste an access code that has been provided by your program administrator through a website, email, text message, or printout.", + "code-hint": "The code begins with ‘nrelop’ and may be in barcode or text format.", + "scan-code": "Scan code", + "paste-code": "Paste code", + "scan-hint": "Scan the barcode with your phone camera", + "paste-hint": "Or, paste the code as text", + "about-app-title": "About {{appName}}", "about-app-para-1": "The National Renewable Energy Laboratory’s Open Platform for Agile Trip Heuristics (NREL OpenPATH) enables people to track their travel modes—car, bus, bike, walking, etc.—and measure their associated energy use and carbon footprint.", "about-app-para-2": "The app empowers communities to understand their travel mode choices and patterns, experiment with options to make them more sustainable, and evaluate the results. Such results can inform effective transportation policy and planning and be used to build more sustainable and accessible cities.", "about-app-para-3": "It does so by building an automatic diary of all your trips, across all transportation modes. It reads multiple sensors, including location, in the background, and turns GPS tracking on and off automatically for minimal power consumption. The choice of the travel pattern information and the carbon footprint display style are study-specific.", + "tips-title": "Tip(s) for correct operation:", "all-green-status": "Make sure that all status checks are green", "dont-force-kill": "Do not force kill the app", "background-restrictions": "On Samsung and Huwaei phones, make sure that background restrictions are turned off", - "close": "Close", - "tips-title": "Tip(s) for correct operation:" + "close": "Close" }, "config": { "unable-read-saved-config": "Unable to read saved config", diff --git a/www/js/onboarding/WelcomePage.tsx b/www/js/onboarding/WelcomePage.tsx index d410bb1f0..15fef703e 100644 --- a/www/js/onboarding/WelcomePage.tsx +++ b/www/js/onboarding/WelcomePage.tsx @@ -1,17 +1,22 @@ import React, { useContext, useState } from 'react'; -import { useTranslation } from 'react-i18next'; -import { View, Image, Modal, StyleSheet } from 'react-native'; -import { Button, Dialog, Divider, Surface, Text, TextInput } from 'react-native-paper'; +import { Trans, useTranslation } from 'react-i18next'; +import { View, Image, Modal, ScrollView, StyleSheet, ViewStyle, useWindowDimensions } from 'react-native'; +import { Button, Dialog, Divider, IconButton, Surface, Text, TextInput, TouchableRipple, useTheme } from 'react-native-paper'; +import color from 'color'; import { initByUser } from '../config/dynamicConfig'; import { AppContext } from '../App'; import { onboardingStyles } from './OnboardingStack'; +import { Icon } from '../components/Icon'; const WelcomePage = () => { const { t } = useTranslation(); + const { colors } = useTheme(); + const { width: windowWidth } = useWindowDimensions(); const context = useContext(AppContext); const { refreshOnboardingState } = context; const [pasteModalVis, setPasteModalVis] = useState(false); + const [infoPopupVis, setInfoPopupVis] = useState(false); const [existingToken, setExistingToken] = useState(''); function scanCode() { @@ -32,24 +37,34 @@ const WelcomePage = () => { } return (<> - - {/* */} - - {t('join.welcome-to-nrel-openpath')} + + + setInfoPopupVis(true)} /> + + + + + }} /> - - {t('join.proceed-further')} - {t('join.what-is-opcode')} - - - {t('join.scan-details')} + + {t('join.to-proceed-further')} + {t('join.code-hint')} + + + + + {t('join.scan-code')} + + {t('join.scan-hint')} - - - {t('join.or')} - - - - - {t('join.paste-details')} + + + setPasteModalVis(true)} icon='content-paste'> + {t('join.paste-code')} + + {t('join.paste-hint')} @@ -65,16 +80,109 @@ const WelcomePage = () => { + setInfoPopupVis(false)}> + setInfoPopupVis(false)}> + + {t('join.about-app-title', {appName: t('join.app-name')})} + + + + {t('join.about-app-para-1')} + {t('join.about-app-para-2')} + {t('join.about-app-para-3')} + {t('join.tips-title')} + - {t('join.all-green-status')} + - {t('join.dont-force-kill')} + - {t('join.background-restrictions')} + + + + + + + ); } -const s = StyleSheet.create({ +const s: any = StyleSheet.create({ + headerArea: ((windowWidth, colors) => ({ + width: windowWidth * 2.5, + height: windowWidth, + left: -windowWidth * .75, + borderBottomRightRadius: '50%', + borderBottomLeftRadius: '50%', + position: 'absolute', + top: windowWidth * -2/3, + backgroundColor: colors.primary, + boxShadow: `0 16px ${color(colors.primary).alpha(0.3).rgb().string()}`, + })) as ViewStyle, + appIconWrapper: ((colors): ViewStyle => ({ + marginTop: 20, + width: 200, + height: 200, + alignSelf: 'center', + backgroundColor: color(colors.onPrimary).darken(0.1).alpha(0.4).rgb().string(), + padding: 10, + borderRadius: 32, + })) as ViewStyle, + infoButton: { + position: 'absolute', + top: 10, + right: 10, + width: 40, + height: 40, + elevation: 2, + }, + appIcon: ((colors): ViewStyle => ({ + width: '100%', + height: '100%', + backgroundColor: colors.onPrimary, + borderRadius: 24, + })) as ViewStyle, welcomeTitle: { marginTop: 20, textAlign: 'center', paddingVertical: 20, - fontWeight: '600', }, + buttonsSection: { + flexDirection: 'row', + justifyContent: 'center', + marginVertical: 20, + }, +}); + + +const WelcomePageButton = ({ onPress, icon, children }) => { + + const { colors } = useTheme(); + const { width: windowWidth } = useWindowDimensions(); + + return ( + + + + + {children} + + + + ); +} + +const welcomeButtonStyles: any = StyleSheet.create({ + btn: ((colors): ViewStyle => ({ + justifyContent: 'center', + alignItems: 'center', + backgroundColor: colors.primary, + borderRadius: 21, + padding: 20, + gap: 8, + })) as ViewStyle, + wrapper: ((colors): ViewStyle => ({ + borderRadius: 26, + padding: 5, + backgroundColor: color(colors.primary).alpha(0.4).rgb().string(), + })) as ViewStyle, }); export default WelcomePage; From afdfd2dd344be6859fefa88ff9dadbf4eb1ae200 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Mon, 25 Sep 2023 23:34:01 -0400 Subject: [PATCH 044/103] SaveQrPage styling: center text, prevent overflow - center the 'make sure to save your opcode' text and the 'cannot retrieve' text - prevent the opcode from overflowing by giving a max width, and allowing it to break lines at any point, not just at spaces/hyphens - some padding around the opcode --- www/js/onboarding/SaveQrPage.tsx | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/www/js/onboarding/SaveQrPage.tsx b/www/js/onboarding/SaveQrPage.tsx index 7ca2f4b94..f67ef5be2 100644 --- a/www/js/onboarding/SaveQrPage.tsx +++ b/www/js/onboarding/SaveQrPage.tsx @@ -53,12 +53,18 @@ const SaveQrPage = ({ }) => { return ( - {t('login.make-sure-save-your-opcode')} - {t('login.cannot-retrieve')} + + {t('login.make-sure-save-your-opcode')} + + + {t('login.cannot-retrieve')} + - + - {pendingOnboardingState.opcode} + + {pendingOnboardingState.opcode} + - - - - diff --git a/www/templates/control/main-consent.html b/www/templates/control/main-consent.html deleted file mode 100644 index f991eab7f..000000000 --- a/www/templates/control/main-consent.html +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/www/templates/control/qrc.html b/www/templates/control/qrc.html deleted file mode 100644 index 3d189cece..000000000 --- a/www/templates/control/qrc.html +++ /dev/null @@ -1,28 +0,0 @@ - - - -
-
-
-

{{'general-settings.qrcode'}}

-
-
-
-
- -
-

-
-
- -
-
-

-
-
- -
-
- - -
diff --git a/www/templates/intro/changes.html b/www/templates/intro/changes.html deleted file mode 100644 index 686076b52..000000000 --- a/www/templates/intro/changes.html +++ /dev/null @@ -1,21 +0,0 @@ - - -
-

E-Mission: Data driven carbon emission reduction

-
- -
- Changes between the previously approved protocol and the current one are: -
-
    -
  1. Switch from moves to our own data collection
  2. -
  3. Define policies when used as a platform for an external study
  4. -
  5. Specify policies for time-delayed access of datasets
  6. -
-
- -
diff --git a/www/templates/intro/consent-text.html b/www/templates/intro/consent-text.html deleted file mode 100644 index fa4c2f6d9..000000000 --- a/www/templates/intro/consent-text.html +++ /dev/null @@ -1,136 +0,0 @@ - - diff --git a/www/templates/intro/consent.html b/www/templates/intro/consent.html deleted file mode 100644 index 3c33eeca3..000000000 --- a/www/templates/intro/consent.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - diff --git a/www/templates/intro/intro.html b/www/templates/intro/intro.html deleted file mode 100644 index eaa806b6d..000000000 --- a/www/templates/intro/intro.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/www/templates/intro/reconsent.html b/www/templates/intro/reconsent.html deleted file mode 100644 index b7adfe168..000000000 --- a/www/templates/intro/reconsent.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/www/templates/intro/saveTokenFile.html b/www/templates/intro/saveTokenFile.html deleted file mode 100644 index b1bbd9d51..000000000 --- a/www/templates/intro/saveTokenFile.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - diff --git a/www/templates/intro/sensor_explanation.html b/www/templates/intro/sensor_explanation.html deleted file mode 100644 index 9f1d725ab..000000000 --- a/www/templates/intro/sensor_explanation.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - diff --git a/www/templates/intro/summary.html b/www/templates/intro/summary.html deleted file mode 100644 index fcff5f5d2..000000000 --- a/www/templates/intro/summary.html +++ /dev/null @@ -1,24 +0,0 @@ - - -
-

{{template_text.deployment_name}}

-
- -
- The {{ui_config.intro.deployment_partner_name}} {{template_text.deployment_name}}: -
-
    -
  1. ✔️ {{template_text.summary_line_1}} -
    -
  2. ✔️ {{template_text.summary_line_2}} -
    -
  3. ✔️ {{template_text.summary_line_3}} -
-
-
- - - - diff --git a/www/templates/intro/survey.html b/www/templates/intro/survey.html deleted file mode 100644 index 14416ee75..000000000 --- a/www/templates/intro/survey.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/www/templates/join/about-app.html b/www/templates/join/about-app.html deleted file mode 100644 index 63ab20ba1..000000000 --- a/www/templates/join/about-app.html +++ /dev/null @@ -1,42 +0,0 @@ - - -
{{'join.about-app-para-1'}}
- -
{{'join.about-app-para-2'}}
- -
{{'join.about-app-para-3'}}
- -
- {{'join.tips-title'}} -
- - - - {{'join.all-green-status'}} - - - - {{'join.dont-force-kill'}} - - -
-
- -
- - {{'join.all-green-status'}} - -
- - {{'join.background-restrictions'}} - - -
-
- - - - - diff --git a/www/templates/join/request_join.html b/www/templates/join/request_join.html deleted file mode 100644 index 6afd6940d..000000000 --- a/www/templates/join/request_join.html +++ /dev/null @@ -1,39 +0,0 @@ - - - -
-
NREL OpenPATH icon
-
-
-
-

{{'join.proceed-further'}}

- -

{{'join.what-is-opcode'}}

- -
- - - -
- - {{'join.scan-details'}} -
-
- -
- {{'join.or'}} -
-
- -
- - {{'join.paste-details'}} -
-
-
-
-
-
-
diff --git a/www/templates/metrics/arrow-greater-lesser.html b/www/templates/metrics/arrow-greater-lesser.html deleted file mode 100644 index bdb0cf940..000000000 --- a/www/templates/metrics/arrow-greater-lesser.html +++ /dev/null @@ -1,38 +0,0 @@ - - -
- -
-
-
{{ change.low | number:0 }}% {{'metrics.greater-than' | i18next }} {{ 'metrics.last-week' | i18next }}
-
-
-
-
{{ (-1) * change.low | number:0 }}% {{'metrics.less-than' | i18next }} {{ 'metrics.last-week' | i18next }}
-
-
-
- -
-
-
-
-
=
-
{{ (-1) * change.low | number:0 }}% {{'metrics.less' | i18next }}
-
{{ change.low | number:0 }}% {{'metrics.greater' | i18next }}
-
-
-
{{'metrics.or' | i18next }}
-
{{'metrics.week-before' | i18next }}
-
-
-
-
-
=
-
{{ (-1) * change.high | number:0 }}% {{'metrics.less' | i18next }}
-
{{ change.high | number:0 }}% {{'metrics.greater' | i18next }}
-
-
-
diff --git a/www/templates/metrics/metrics-control.html b/www/templates/metrics/metrics-control.html deleted file mode 100644 index 6d2be64dc..000000000 --- a/www/templates/metrics/metrics-control.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - -
-
-
{{ uictrl.currentString }}
- -
-
-
-
-
-
-
{{'metrics.from'}}
-
-
- -
-
-
- - -
-
-
-
{{'metrics.to'}} -
-
-
-
-
-
-
-
{{'metrics.frequency'}}
-
-
-
{{selectCtrl.pandaFreqString}}
-
-
- - - -
-
diff --git a/www/templates/metrics/range-display.html b/www/templates/metrics/range-display.html deleted file mode 100644 index fa8c3581e..000000000 --- a/www/templates/metrics/range-display.html +++ /dev/null @@ -1,2 +0,0 @@ -{{ lowFmt }} -{{ lowFmt }} - {{ highFmt }} diff --git a/www/templates/splash/splash.html b/www/templates/splash/splash.html deleted file mode 100644 index 901f6359c..000000000 --- a/www/templates/splash/splash.html +++ /dev/null @@ -1,7 +0,0 @@ - - -
- -
-
-
diff --git a/www/templates/survey/enketo/demographics-button.html b/www/templates/survey/enketo/demographics-button.html deleted file mode 100644 index 4396410e2..000000000 --- a/www/templates/survey/enketo/demographics-button.html +++ /dev/null @@ -1,6 +0,0 @@ -
-
{{'control.edit-demographics'}}
- -
diff --git a/www/templates/survey/enketo/enketo_bare_150x56.png b/www/templates/survey/enketo/enketo_bare_150x56.png deleted file mode 100644 index ee47dd6c1898bcd32bc3ad5d588b9343e177a181..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8977 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 - -
diff --git a/www/templates/survey/enketo/inline.html b/www/templates/survey/enketo/inline.html deleted file mode 100644 index 34b61e282..000000000 --- a/www/templates/survey/enketo/inline.html +++ /dev/null @@ -1,40 +0,0 @@ - - -
{{'survey.loading-prior-survey'}}
-
-
- -
- -
{{'survey.prev-survey-found'}}
-
-
- -
-
- -
-
- -
-
- - -
-
- -
- -
-
-
-
- - -
-
-
diff --git a/www/templates/survey/enketo/modal.html b/www/templates/survey/enketo/modal.html deleted file mode 100644 index cc9c6c02d..000000000 --- a/www/templates/survey/enketo/modal.html +++ /dev/null @@ -1,13 +0,0 @@ - - -

{{'survey.survey'}}

- -
- - - -
diff --git a/www/templates/survey/enketo/preview.html b/www/templates/survey/enketo/preview.html deleted file mode 100644 index 0a51a4141..000000000 --- a/www/templates/survey/enketo/preview.html +++ /dev/null @@ -1,6 +0,0 @@ - From e076c5d01ffd24ae1b6b1eeb936025a01beef438 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 01:59:58 -0400 Subject: [PATCH 055/103] remove general-settings.js The emission.main.control module is removed from main.js. A couple module dependencies had to be put here since they won't be included by extension of emission.main.control anymore, and they aren't already included elsewhere in the app --- www/index.js | 1 - www/js/control/general-settings.js | 36 ------------------------------ www/js/main.js | 3 ++- 3 files changed, 2 insertions(+), 38 deletions(-) delete mode 100644 www/js/control/general-settings.js diff --git a/www/index.js b/www/index.js index 9ad60ee40..54ad50bbd 100644 --- a/www/index.js +++ b/www/index.js @@ -35,7 +35,6 @@ import './js/survey/enketo/infinite_scroll_filters.js'; import './js/survey/enketo/enketo-trip-button.js'; import './js/survey/enketo/enketo-demographics.js'; import './js/survey/enketo/enketo-add-note-button.js'; -import './js/control/general-settings.js'; import './js/control/emailService.js'; import './js/control/uploadService.js'; import './js/control/collect-settings.js'; diff --git a/www/js/control/general-settings.js b/www/js/control/general-settings.js deleted file mode 100644 index e29702d6e..000000000 --- a/www/js/control/general-settings.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; - -import angular from 'angular'; -import ProfileSettings from './ProfileSettings'; - -angular.module('emission.main.control',['emission.services', - 'emission.i18n.utils', - 'emission.main.control.collection', - 'emission.main.control.sync', - 'emission.splash.localnotify', - 'emission.splash.notifscheduler', - 'emission.splash.startprefs', - 'emission.main.metrics.factory', - 'emission.stats.clientstats', - 'emission.plugin.kvstore', - 'emission.plugin.logger', - 'emission.config.dynamic', - ProfileSettings.module]) - -.controller('ControlCtrl', function($scope, $ionicPlatform, - $state, $ionicPopover, i18nUtils, - $ionicModal, $stateParams, Logger, - KVStore, CalorieCal, ClientStats, - StartPrefs, ControlHelper, EmailHelper, UploadHelper, - ControlCollectionHelper, ControlSyncHelper, - CarbonDatasetHelper, NotificationScheduler, DynamicConfig) { - - console.log("controller ControlCtrl called without params"); - - //used to have on "afterEnter" that checked for 2 things - //modal launch -> migrated into AppStatusModal w/ use of custom hook! - //stateParams.openTimeOfDayPicker -> functionality lost for now - //to change reminder time if accessing profile by specific android notification flow - //would open the date picker - -}); diff --git a/www/js/main.js b/www/js/main.js index 9724af0c3..fa15bd327 100644 --- a/www/js/main.js +++ b/www/js/main.js @@ -4,7 +4,8 @@ import angular from 'angular'; import App from './App'; angular.module('emission.main', ['emission.main.diary', - 'emission.main.control', + 'emission.i18n.utils', + 'emission.splash.notifscheduler', 'emission.main.metrics.factory', 'emission.main.metrics.mappings', 'emission.config.dynamic', From 22faf08613d0556f89442565ef598f3575c3011a Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:08:42 -0400 Subject: [PATCH 056/103] remove dynamic_config.js and server_conn.js These services are replaced by dynamicConfig.ts and serverConn.ts. We track down all the places the old services were used and substitute in their equivalents. So everywhere we used to call configReady() from the old DynamicConfig, we'll instead call getConfig() from the new dynamicConfig.ts. --- www/index.js | 2 - www/js/config/dynamic_config.js | 348 --------------------- www/js/config/server_conn.js | 36 --- www/js/control/ProfileSettings.jsx | 1 - www/js/diary/services.js | 5 +- www/js/metrics-mappings.js | 10 +- www/js/ngApp.js | 8 +- www/js/onboarding/onboardingHelper.ts | 8 +- www/js/splash/notifScheduler.js | 8 +- www/js/splash/startprefs.js | 8 +- www/js/survey/enketo/answer.js | 7 +- www/js/survey/enketo/service.js | 3 +- www/js/survey/multilabel/multi-label-ui.js | 2 +- 13 files changed, 25 insertions(+), 421 deletions(-) delete mode 100644 www/js/config/dynamic_config.js delete mode 100644 www/js/config/server_conn.js diff --git a/www/index.js b/www/index.js index 54ad50bbd..e4dce19c7 100644 --- a/www/index.js +++ b/www/index.js @@ -5,9 +5,7 @@ import './manual_lib/fontawesome/css/all.min.css'; import 'leaflet/dist/leaflet.css'; import './js/ngApp.js'; -import './js/config/dynamic_config.js'; import './js/config/imperial.js'; -import './js/config/server_conn.js'; import './js/stats/clientstats.js'; import './js/splash/referral.js'; import './js/splash/customURL.js'; diff --git a/www/js/config/dynamic_config.js b/www/js/config/dynamic_config.js deleted file mode 100644 index cb84924e7..000000000 --- a/www/js/config/dynamic_config.js +++ /dev/null @@ -1,348 +0,0 @@ -'use strict'; - -import angular from 'angular'; -import { displayError, logDebug } from '../plugin/logger'; -import i18next from 'i18next'; -import { fetchUrlCached } from '../commHelper'; - -angular.module('emission.config.dynamic', ['emission.plugin.logger', - 'emission.plugin.kvstore']) -.factory('DynamicConfig', function($http, $ionicPlatform, - $window, $state, $rootScope, $timeout, KVStore, Logger) { - // also used in the startprefs class - // but without importing this - const CONFIG_PHONE_UI="config/app_ui_config"; - const CONFIG_PHONE_UI_KVSTORE ="CONFIG_PHONE_UI"; - const LOAD_TIMEOUT = 6000; // 6000 ms = 6 seconds - - var dc = {}; - dc.UI_CONFIG_READY="UI_CONFIG_READY"; - dc.UI_CONFIG_CHANGED="UI_CONFIG_CHANGED"; - dc.isConfigReady = false; - dc.isConfigChanged = false; - - dc.configChanged = function() { - if (dc.isConfigChanged) { - return Promise.resolve(dc.config); - } else { - return new Promise(function(resolve, reject) { - $rootScope.$on(dc.UI_CONFIG_CHANGED, (event, newConfig) => resolve(newConfig)); - }); - } - } - dc.configReady = function() { - if (dc.isConfigReady) { - Logger.log("UI_CONFIG in configReady function, resolving immediately"); - return Promise.resolve(dc.config); - } else { - Logger.log("UI_CONFIG in configReady function, about to create promise"); - return new Promise(function(resolve, reject) { - Logger.log("Registering for UI_CONFIG_READY notification in dynamic_config inside the promise"); - $rootScope.$on(dc.UI_CONFIG_READY, (event, newConfig) => { - Logger.log("Received UI_CONFIG_READY notification in dynamic_config, resolving promise"); - resolve(newConfig) - }); - }); - } - } - - /* Fetch and cache any surveys resources that are referenced by URL in the config, - as well as the label_options config if it is present. - This way they will be available when the user needs them, and we won't have to - fetch them again unless local storage is cleared. */ - const cacheResourcesFromConfig = (config) => { - if (config.survey_info?.surveys) { - Object.values(config.survey_info.surveys).forEach((survey) => { - if (!survey?.formPath) - throw new Error(i18next.t('config.survey-missing-formpath')); - fetchUrlCached(survey.formPath); - }); - } - if (config.label_options) { - fetchUrlCached(config.label_options); - } - } - - const readConfigFromServer = async (label) => { - const config = await fetchConfig(label); - Logger.log("Successfully found config, result is " + JSON.stringify(config).substring(0, 10)); - - // fetch + cache any resources referenced in the config, but don't 'await' them so we don't block - // the config loading process - cacheResourcesFromConfig(config); - - const connectionURL = config.server ? config.server.connectUrl : "dev defaults"; - _fillStudyName(config); - _backwardsCompatSurveyFill(config); - Logger.log("Successfully downloaded config with version " + config.version - + " for " + config.intro.translated_text.en.deployment_name - + " and data collection URL " + connectionURL); - return config; - } - - const fetchConfig = async (label, alreadyTriedLocal=false) => { - Logger.log("Received request to join "+label); - const downloadURL = `https://raw.githubusercontent.com/e-mission/nrel-openpath-deploy-configs/main/configs/${label}.nrel-op.json`; - if (!__DEV__ || alreadyTriedLocal) { - Logger.log("Fetching config from github"); - const r = await fetch(downloadURL); - if (!r.ok) throw new Error('Unable to fetch config from github'); - return r.json(); - } - else { - Logger.log("Running in dev environment, checking for locally hosted config"); - try { - const r = await fetch('http://localhost:9090/configs/'+label+'.nrel-op.json'); - if (!r.ok) throw new Error('Local config not found'); - return r.json(); - } catch (err) { - Logger.log("Local config not found"); - return fetchConfig(label, true); - } - } - } - - dc.loadSavedConfig = function() { - const nativePlugin = $window.cordova.plugins.BEMUserCache; - const rwDocRead = nativePlugin.getDocument(CONFIG_PHONE_UI, false); - const kvDocRead = KVStore.get(CONFIG_PHONE_UI_KVSTORE); - return Promise.all([rwDocRead, kvDocRead]) - .then(([rwConfig, kvStoreConfig]) => { - const savedConfig = kvStoreConfig? kvStoreConfig : rwConfig; - Logger.log("DYNAMIC CONFIG: kvStoreConfig key length = "+ Object.keys(kvStoreConfig || {}).length - +" rwConfig key length = "+ Object.keys(rwConfig || {}).length - +" using kvStoreConfig? "+(kvStoreConfig? true: false)); - if (!kvStoreConfig && rwConfig) { - // Backwards compat, can remove at the end of 2023 - Logger.log("DYNAMIC CONFIG: rwConfig found, kvStoreConfig not found, setting to fix backwards compat"); - KVStore.set(CONFIG_PHONE_UI_KVSTORE, rwConfig); - } - if ((Object.keys(kvStoreConfig || {}).length > 0) - && (Object.keys(rwConfig || {}).length == 0)) { - // Might as well sync the RW config if it doesn't exist and - // have triple-redundancy for this - nativePlugin.putRWDocument(CONFIG_PHONE_UI, kvStoreConfig); - } - Logger.log("DYNAMIC CONFIG: final selected config = "+JSON.stringify(savedConfig)); - if (nativePlugin.isEmptyDoc(savedConfig)) { - Logger.log("Found empty saved ui config, returning null"); - return undefined; - } else { - Logger.log("Found previously stored ui config, returning it"); - _fillStudyName(savedConfig); - _backwardsCompatSurveyFill(savedConfig); - return savedConfig; - } - }) - .catch((err) => Logger.displayError(i18next.t('config.unable-read-saved-config'), err)); - } - - dc.resetConfigAndRefresh = function() { - const resetNativePromise = $window.cordova.plugins.BEMUserCache.putRWDocument(CONFIG_PHONE_UI, {}); - const resetKVStorePromise = KVStore.set(CONFIG_PHONE_UI_KVSTORE, {}); - Promise.all([resetNativePromise, resetKVStorePromise]) - .then($window.location.reload(true)); - } - - /** - * loadNewConfig download and load a new config from the server if it is a differ - * @param {[]} urlComponents specify the label of the config to load - * @param {} thenGoToIntro whether to go to the intro screen after loading the config - * @param {} [existingVersion=null] if the new config's version is the same, we won't update - * @returns {boolean} boolean representing whether the config was updated or not - */ - var loadNewConfig = function (newStudyLabel, thenGoToIntro, existingVersion=null) { - return readConfigFromServer(newStudyLabel).then((downloadedConfig) => { - if (downloadedConfig.version == existingVersion) { - Logger.log("UI_CONFIG: Not updating config because version is the same"); - return Promise.resolve(false); - } - // we want to validate before saving because we don't want to save - // an invalid configuration - const subgroup = dc.extractSubgroup(dc.scannedToken, downloadedConfig); - // we can use angular.extend since urlComponents is not nested - // need to change this to angular.merge if that changes - const toSaveConfig = angular.extend(downloadedConfig, - {joined: {opcode: dc.scannedToken, study_name: newStudyLabel, subgroup: subgroup}}); - const storeConfigPromise = $window.cordova.plugins.BEMUserCache.putRWDocument( - CONFIG_PHONE_UI, toSaveConfig); - const storeInKVStorePromise = KVStore.set(CONFIG_PHONE_UI_KVSTORE, toSaveConfig); - const logSuccess = (storeResults) => Logger.log("UI_CONFIG: Stored dynamic config successfully, result = "+JSON.stringify(storeResults)); - // loaded new config, so it is both ready and changed - return Promise.all([storeConfigPromise, storeInKVStorePromise]).then( - ([result, kvStoreResult]) => { - logSuccess(result); - dc.saveAndNotifyConfigChanged(downloadedConfig); - dc.saveAndNotifyConfigReady(downloadedConfig); - if (thenGoToIntro) - $state.go("root.intro"); - return true; - }).catch((storeError) => - Logger.displayError(i18next.t('config.unable-to-store-config'), storeError)); - }).catch((fetchErr) => { - displayError(fetchErr, i18next.t('config.unable-download-config')); - }); - } - - dc.saveAndNotifyConfigReady = function(newConfig) { - dc.config = newConfig; - dc.isConfigReady = true; - console.log("Broadcasting event "+dc.UI_CONFIG_READY); - $rootScope.$broadcast(dc.UI_CONFIG_READY, newConfig); - } - - dc.saveAndNotifyConfigChanged = function(newConfig) { - dc.config = newConfig; - dc.isConfigChanged = true; - console.log("Broadcasting event "+dc.UI_CONFIG_CHANGED); - $rootScope.$broadcast(dc.UI_CONFIG_CHANGED, newConfig); - } - - const _getStudyName = function(connectUrl) { - const orig_host = new URL(connectUrl).hostname; - const first_domain = orig_host.split(".")[0]; - if (first_domain == "openpath-stage") { return "stage"; } - const openpath_index = first_domain.search("-openpath"); - if (openpath_index == -1) { return undefined; } - const study_name = first_domain.substr(0,openpath_index); - return study_name; - } - - const _fillStudyName = function(config) { - if (!config.name) { - if (config.server) { - config.name = _getStudyName(config.server.connectUrl); - } else { - config.name = "dev"; - } - } - } - - const _backwardsCompatSurveyFill = function(config) { - if (!config.survey_info) { - config.survey_info = { - "surveys": { - "UserProfileSurvey": { - "formPath": "json/demo-survey-v2.json", - "version": 1, - "compatibleWith": 1, - "dataKey": "manual/demographic_survey", - "labelTemplate": { - "en": "Answered", - "es": "Contestada" - } - } - }, - "trip-labels": "MULTILABEL" - } - } - } - - /* - * We want to support both old style and new style tokens. - * Theoretically, we don't need anything from this except the study - * name, but we should re-validate the token for extra robustness. - * The control flow here is a bit tricky, though. - * - we need to first get the study name - * - then we need to retrieve the study config - * - then we need to re-validate the token against the study config, - * and the subgroups in the study config, in particular. - * - * So let's support two separate functions here - extractStudyName and extractSubgroup - */ - dc.extractStudyName = function(token) { - const tokenParts = token.split("_"); - if (tokenParts.length < 3) { - // all tokens must have at least nrelop_[study name]_... - throw new Error(i18next.t('config.not-enough-parts-old-style', {"token": token})); - } - if (tokenParts[0] != "nrelop") { - throw new Error(i18next.t('config.no-nrelop-start', {token: token})); - } - return tokenParts[1]; - } - - dc.extractSubgroup = function(token, config) { - if (config.opcode) { - // new style study, expects token with sub-group - const tokenParts = token.split("_"); - if (tokenParts.length <= 3) { // no subpart defined - throw new Error(i18next.t('config.not-enough-parts', {token: token})); - } - if (config.opcode.subgroups) { - if (config.opcode.subgroups.indexOf(tokenParts[2]) == -1) { - // subpart not in config list - throw new Error(i18next.t('config.invalid-subgroup', {token: token, subgroup: tokenParts[2], config_subgroups: config.opcode.subgroups})); - } else { - console.log("subgroup "+tokenParts[2]+" found in list "+config.opcode.subgroups); - return tokenParts[2]; - } - } else { - if (tokenParts[2] != "default") { - // subpart not in config list - throw new Error(i18next.t('config.invalid-subgroup-no-default', {token: token})); - } else { - console.log("no subgroups in config, 'default' subgroup found in token "); - return tokenParts[2]; - } - } - } else { - /* old style study, expect token without subgroup - * nothing further to validate at this point - * only validation required is `nrelop_` and valid study name - * first is already handled in extractStudyName, second is handled - * by default since download will fail if it is invalid - */ - console.log("Old-style study, expecting token without a subgroup..."); - return undefined; - } - } - - - - dc.initByUser = function(urlComponents) { - dc.scannedToken = urlComponents.token; - try { - const newStudyLabel = dc.extractStudyName(dc.scannedToken); - return loadNewConfig(newStudyLabel, true) - // on successful download, cache the token in the rootScope - .then((wasUpdated) => {$rootScope.scannedToken = dc.scannedToken}) - .catch((fetchErr) => { - Logger.displayError(i18next.t('config.unable-download-config'), fetchErr); - }); - } catch (error) { - Logger.displayError(i18next.t('config.invalid-opcode-format'), error); - return Promise.reject(error); - } - }; - dc.initAtLaunch = function () { - dc.loadSavedConfig().then((existingConfig) => { - if (!existingConfig) { - return Logger.log("UI_CONFIG: No existing config, skipping"); - } - // if 'autoRefresh' is set, we will check for updates - if (existingConfig.autoRefresh) { - loadNewConfig(existingConfig.joined.study_name, false, existingConfig.version) - .then((wasUpdated) => { - if (!wasUpdated) { - // config was not updated so we will proceed with existing config - $rootScope.$evalAsync(() => dc.saveAndNotifyConfigReady(existingConfig)); - } - }).catch((fetchErr) => { - // if we can't check for an updated config, we will proceed with the existing config - Logger.log("UI_CONFIG: Unable to check for update, skipping", fetchErr); - $rootScope.$evalAsync(() => dc.saveAndNotifyConfigReady(existingConfig)); - }); - } else { - Logger.log("UI_CONFIG: autoRefresh is false, not checking for updates. Using existing config") - $rootScope.$apply(() => dc.saveAndNotifyConfigReady(existingConfig)); - } - }).catch((err) => { - Logger.displayError(i18next.t('config.error-loading-config-app-start', err)) - }); - }; - $ionicPlatform.ready().then(function() { - dc.initAtLaunch(); - }); - return dc; -}); diff --git a/www/js/config/server_conn.js b/www/js/config/server_conn.js deleted file mode 100644 index 4e460d070..000000000 --- a/www/js/config/server_conn.js +++ /dev/null @@ -1,36 +0,0 @@ -'use strict'; - -import angular from 'angular'; - -angular.module('emission.config.server_conn', - ['emission.plugin.logger', 'emission.config.dynamic']) -.factory('ServerConnConfig', function($rootScope, DynamicConfig, $ionicPlatform) { - var scc = {} - - scc.init = function(connectionConfig) { - if (connectionConfig) { - Logger.log("connectionConfig = "+JSON.stringify(connectionConfig)); - $rootScope.connectUrl = connectionConfig.connectUrl; - $rootScope.aggregateAuth = connectionConfig.aggregate_call_auth; - window.cordova.plugins.BEMConnectionSettings.setSettings(connectionConfig); - } else { - // not displaying the error here since we have a backup - Logger.log("connectionConfig not defined, reverting to defaults"); - window.cordova.plugins.BEMConnectionSettings.getDefaultSettings().then(function(defaultConfig) { - Logger.log("defaultConfig = "+JSON.stringify(defaultConfig)); - $rootScope.connectUrl = defaultConfig.connectUrl; - $rootScope.aggregateAuth = "no_auth"; - window.cordova.plugins.BEMConnectionSettings.setSettings(defaultConfig); - }); - }; - }; - - console.log("Registering for the UI_CONFIG_CHANGED notification in the server connection"); - $ionicPlatform.ready().then(function() { - DynamicConfig.configChanged().then((newConfig) => { - Logger.log("Resolved UI_CONFIG_CHANGED promise in server_conn.js, filling in URL"); - scc.init(newConfig.server); - }); - }); - return scc; -}); diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 2e1cb91fd..6c7b05c40 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -40,7 +40,6 @@ const ProfileSettings = () => { const ControlHelper = getAngularService('ControlHelper'); const ClientStats = getAngularService('ClientStats'); const StartPrefs = getAngularService('StartPrefs'); - const DynamicConfig = getAngularService('DynamicConfig'); //functions that come directly from an Angular service const editCollectionConfig = () => setEditCollection(true); diff --git a/www/js/diary/services.js b/www/js/diary/services.js index 0891b9103..c9dfd1bbf 100644 --- a/www/js/diary/services.js +++ b/www/js/diary/services.js @@ -3,10 +3,11 @@ import angular from 'angular'; import { getBaseModeByKey, getBaseModeOfLabeledTrip } from './diaryHelper'; import { SurveyOptions } from '../survey/survey'; +import { getConfig } from '../config/dynamicConfig'; angular.module('emission.main.diary.services', ['emission.plugin.logger', 'emission.services']) -.factory('Timeline', function(CommHelper, DynamicConfig, $http, $ionicLoading, $ionicPlatform, $window, +.factory('Timeline', function(CommHelper, $http, $ionicLoading, $ionicPlatform, $window, $rootScope, UnifiedDataLoader, Logger, $injector) { var timeline = {}; // corresponds to the old $scope.data. Contains all state for the current @@ -17,7 +18,7 @@ angular.module('emission.main.diary.services', ['emission.plugin.logger', let manualInputFactory; $ionicPlatform.ready(function () { - DynamicConfig.configReady().then((configObj) => { + getConfig().then((configObj) => { const surveyOptKey = configObj.survey_info['trip-labels']; const surveyOpt = SurveyOptions[surveyOptKey]; console.log('surveyOpt in services.js is', surveyOpt); diff --git a/www/js/metrics-mappings.js b/www/js/metrics-mappings.js index e8840bd8c..2b71df739 100644 --- a/www/js/metrics-mappings.js +++ b/www/js/metrics-mappings.js @@ -1,9 +1,9 @@ import angular from 'angular'; import { getLabelOptions } from './survey/multilabel/confirmHelper'; +import { getConfig } from './config/dynamicConfig'; angular.module('emission.main.metrics.mappings', ['emission.plugin.logger', - 'emission.plugin.kvstore', - "emission.config.dynamic"]) + 'emission.plugin.kvstore']) .service('CarbonDatasetHelper', function(KVStore) { var CARBON_DATASET_KEY = 'carbon_dataset_locale'; @@ -314,7 +314,7 @@ angular.module('emission.main.metrics.mappings', ['emission.plugin.logger', return standardMETs; } }) -.factory('CustomDatasetHelper', function(METDatasetHelper, Logger, $ionicPlatform, DynamicConfig) { +.factory('CustomDatasetHelper', function(METDatasetHelper, Logger, $ionicPlatform) { var cdh = {}; cdh.getCustomMETs = function() { @@ -394,9 +394,7 @@ angular.module('emission.main.metrics.mappings', ['emission.plugin.logger', } $ionicPlatform.ready().then(function() { - DynamicConfig.configReady().then((newConfig) => - cdh.init(newConfig) - ); + getConfig().then((newConfig) => cdh.init(newConfig)); }); return cdh; diff --git a/www/js/ngApp.js b/www/js/ngApp.js index 1e98df357..83c73cb67 100644 --- a/www/js/ngApp.js +++ b/www/js/ngApp.js @@ -31,17 +31,17 @@ import { Provider as PaperProvider } from 'react-native-paper'; import App from './App'; import { getTheme } from './appTheme'; import { SafeAreaView } from 'react-native-safe-area-context'; +import { initByUser } from './config/dynamicConfig'; angular.module('emission', ['ionic', 'jm.i18next', 'emission.controllers','emission.services', 'emission.plugin.logger', 'emission.splash.customURLScheme', 'emission.splash.referral', 'emission.services.email', - 'emission.main', 'emission.config.dynamic', - 'emission.config.server_conn', 'emission.join.ctrl', + 'emission.main', 'emission.join.ctrl', 'pascalprecht.translate', 'LocalStorageModule']) .run(function($ionicPlatform, $rootScope, $http, Logger, - CustomURLScheme, ReferralHandler, DynamicConfig, localStorageService, ServerConnConfig) { + CustomURLScheme, ReferralHandler, localStorageService) { console.log("Starting run"); // ensure that plugin events are delivered after the ionicPlatform is ready // https://github.com/katzer/cordova-plugin-local-notifications#launch-details @@ -59,7 +59,7 @@ angular.module('emission', ['ionic', 'jm.i18next', ReferralHandler.setupGroupReferral(urlComponents); StartPrefs.loadWithPrefs(); } else if (urlComponents.route == 'login_token') { - DynamicConfig.initByUser(urlComponents); + initByUser(urlComponents); } }); // END: Global listeners diff --git a/www/js/onboarding/onboardingHelper.ts b/www/js/onboarding/onboardingHelper.ts index b58aca732..659382079 100644 --- a/www/js/onboarding/onboardingHelper.ts +++ b/www/js/onboarding/onboardingHelper.ts @@ -1,5 +1,6 @@ import { DateTime } from "luxon"; import { getAngularService } from "../angular-react-helper"; +import { getConfig } from "../config/dynamicConfig"; export const INTRO_DONE_KEY = 'intro_done'; @@ -16,7 +17,7 @@ export let registerUserDone = false; export const setRegisterUserDone = (b) => registerUserDone = b; export function getPendingOnboardingState(): Promise { - return Promise.all([readConfig(), readConsented(), readIntroDone()]).then(([config, isConsented, isIntroDone]) => { + return Promise.all([getConfig(), readConsented(), readIntroDone()]).then(([config, isConsented, isIntroDone]) => { if (isIntroDone) return null; // onboarding is done; no pending state let route: OnboardingRoute = false; if (!config) { @@ -32,11 +33,6 @@ export function getPendingOnboardingState(): Promise { }); }; -async function readConfig() { - const DynamicConfig = getAngularService('DynamicConfig'); - return DynamicConfig.loadSavedConfig() as Promise; -} - async function readConsented() { const StartPrefs = getAngularService('StartPrefs'); return StartPrefs.readConsentState().then(StartPrefs.isConsented) as Promise; diff --git a/www/js/splash/notifScheduler.js b/www/js/splash/notifScheduler.js index 069af7a18..821b6fb09 100644 --- a/www/js/splash/notifScheduler.js +++ b/www/js/splash/notifScheduler.js @@ -1,15 +1,15 @@ 'use strict'; import angular from 'angular'; +import { getConfig } from '../config/dynamicConfig'; angular.module('emission.splash.notifscheduler', ['emission.services', 'emission.plugin.logger', - 'emission.stats.clientstats', - 'emission.config.dynamic']) + 'emission.stats.clientstats']) .factory('NotificationScheduler', function($http, $window, $ionicPlatform, - ClientStats, DynamicConfig, CommHelper, Logger) { + ClientStats, CommHelper, Logger) { const scheduler = {}; let _config; @@ -258,7 +258,7 @@ angular.module('emission.splash.notifscheduler', } $ionicPlatform.ready().then(async () => { - _config = await DynamicConfig.configReady(); + _config = await getConfig(); if (!_config.reminderSchemes) { Logger.log("No reminder schemes found in config, not scheduling notifications"); return; diff --git a/www/js/splash/startprefs.js b/www/js/splash/startprefs.js index d3c7bdd3e..67ab7a7f6 100644 --- a/www/js/splash/startprefs.js +++ b/www/js/splash/startprefs.js @@ -1,12 +1,12 @@ import angular from 'angular'; +import { getConfig } from '../config/dynamicConfig'; angular.module('emission.splash.startprefs', ['emission.plugin.logger', 'emission.splash.referral', - 'emission.plugin.kvstore', - 'emission.config.dynamic']) + 'emission.plugin.kvstore']) .factory('StartPrefs', function($window, $state, $interval, $rootScope, $ionicPlatform, - $ionicPopup, KVStore, $http, Logger, ReferralHandler, DynamicConfig) { + $ionicPopup, KVStore, $http, Logger, ReferralHandler) { var logger = Logger; var nTimesCalled = 0; var startprefs = {}; @@ -95,7 +95,7 @@ angular.module('emission.splash.startprefs', ['emission.plugin.logger', } startprefs.readConfig = function() { - return DynamicConfig.loadSavedConfig().then((savedConfig) => $rootScope.app_ui_label = savedConfig); + return getConfig().then((savedConfig) => $rootScope.app_ui_label = savedConfig); } startprefs.hasConfig = function() { diff --git a/www/js/survey/enketo/answer.js b/www/js/survey/enketo/answer.js index da77019f9..e6077c479 100644 --- a/www/js/survey/enketo/answer.js +++ b/www/js/survey/enketo/answer.js @@ -2,11 +2,8 @@ import angular from 'angular'; import MessageFormat from 'messageformat'; import { getConfig } from '../../config/dynamicConfig'; -angular.module('emission.survey.enketo.answer', [ - 'ionic', - 'emission.config.dynamic', -]) -.factory('EnketoSurveyAnswer', function($http, DynamicConfig,) { +angular.module('emission.survey.enketo.answer', ['ionic']) +.factory('EnketoSurveyAnswer', function($http) { /** * @typedef EnketoAnswerData * @type {object} diff --git a/www/js/survey/enketo/service.js b/www/js/survey/enketo/service.js index 2c53fb2e3..8fbf56b22 100644 --- a/www/js/survey/enketo/service.js +++ b/www/js/survey/enketo/service.js @@ -6,12 +6,11 @@ import { getConfig } from '../../config/dynamicConfig'; angular.module('emission.survey.enketo.service', [ 'ionic', 'emission.services', - 'emission.config.dynamic', 'emission.survey.inputmatcher', 'emission.survey.enketo.answer' ]) .factory('EnketoSurvey', function($window, $http, UnifiedDataLoader, - InputMatcher, EnketoSurveyAnswer, DynamicConfig) { + InputMatcher, EnketoSurveyAnswer) { /** * @typedef EnketoSurveyConfig * @type {{ diff --git a/www/js/survey/multilabel/multi-label-ui.js b/www/js/survey/multilabel/multi-label-ui.js index 232fe7bee..313c8a3a9 100644 --- a/www/js/survey/multilabel/multi-label-ui.js +++ b/www/js/survey/multilabel/multi-label-ui.js @@ -6,7 +6,7 @@ angular.module('emission.survey.multilabel.buttons', ['emission.stats.clientstats', 'emission.survey.inputmatcher']) -.factory("MultiLabelService", function($rootScope, InputMatcher, $timeout, $ionicPlatform, DynamicConfig, Logger) { +.factory("MultiLabelService", function($rootScope, InputMatcher, $timeout, $ionicPlatform, Logger) { var mls = {}; console.log("Creating MultiLabelService"); mls.init = function(config) { From cd71ee5be53418a777b10d19b56200eacd65b153 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:09:42 -0400 Subject: [PATCH 057/103] remove fontawesome stuff We haven't used FontAwesome for a while; we're just using Material Design Icons now --- www/index.js | 1 - www/manual_lib/fontawesome/css/all.min.css | 5 - .../fontawesome/webfonts/fa-brands-400.eot | Bin 129352 -> 0 bytes .../fontawesome/webfonts/fa-brands-400.svg | 3442 ------------ .../fontawesome/webfonts/fa-brands-400.ttf | Bin 129048 -> 0 bytes .../fontawesome/webfonts/fa-brands-400.woff | Bin 87352 -> 0 bytes .../fontawesome/webfonts/fa-brands-400.woff2 | Bin 74508 -> 0 bytes .../fontawesome/webfonts/fa-regular-400.eot | Bin 34388 -> 0 bytes .../fontawesome/webfonts/fa-regular-400.svg | 803 --- .../fontawesome/webfonts/fa-regular-400.ttf | Bin 34092 -> 0 bytes .../fontawesome/webfonts/fa-regular-400.woff | Bin 16804 -> 0 bytes .../fontawesome/webfonts/fa-regular-400.woff2 | Bin 13580 -> 0 bytes .../fontawesome/webfonts/fa-solid-900.eot | Bin 192116 -> 0 bytes .../fontawesome/webfonts/fa-solid-900.svg | 4649 ----------------- .../fontawesome/webfonts/fa-solid-900.ttf | Bin 191832 -> 0 bytes .../fontawesome/webfonts/fa-solid-900.woff | Bin 98020 -> 0 bytes .../fontawesome/webfonts/fa-solid-900.woff2 | Bin 75440 -> 0 bytes 17 files changed, 8900 deletions(-) delete mode 100644 www/manual_lib/fontawesome/css/all.min.css delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-brands-400.eot delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-brands-400.svg delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-brands-400.ttf delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-brands-400.woff delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-brands-400.woff2 delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-regular-400.eot delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-regular-400.svg delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-regular-400.ttf delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-regular-400.woff delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-regular-400.woff2 delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-solid-900.eot delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-solid-900.svg delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-solid-900.ttf delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-solid-900.woff delete mode 100644 www/manual_lib/fontawesome/webfonts/fa-solid-900.woff2 diff --git a/www/index.js b/www/index.js index e4dce19c7..d57e41295 100644 --- a/www/index.js +++ b/www/index.js @@ -1,7 +1,6 @@ import './manual_lib/ionic/css/ionic.css'; import './css/style.css'; import './css/main.diary.css'; -import './manual_lib/fontawesome/css/all.min.css'; import 'leaflet/dist/leaflet.css'; import './js/ngApp.js'; diff --git a/www/manual_lib/fontawesome/css/all.min.css b/www/manual_lib/fontawesome/css/all.min.css deleted file mode 100644 index b7d052b6e..000000000 --- a/www/manual_lib/fontawesome/css/all.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Font Awesome Free 5.9.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ -.fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900} \ No newline at end of file diff --git a/www/manual_lib/fontawesome/webfonts/fa-brands-400.eot b/www/manual_lib/fontawesome/webfonts/fa-brands-400.eot deleted file mode 100644 index e79f40f98a8be036d04d8b0def788bd02609b877..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129352 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�W~j5AmI?=WrGa?KDn7M<7h_2n!0fpM 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%0DJ{JhTA8n9G7)DI5$ZQt7 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 diff --git a/www/manual_lib/fontawesome/webfonts/fa-brands-400.svg b/www/manual_lib/fontawesome/webfonts/fa-brands-400.svg deleted file mode 100644 index ba0d850bb..000000000 --- a/www/manual_lib/fontawesome/webfonts/fa-brands-400.svg +++ /dev/null @@ -1,3442 +0,0 @@ - - - - - -Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/www/manual_lib/fontawesome/webfonts/fa-brands-400.ttf b/www/manual_lib/fontawesome/webfonts/fa-brands-400.ttf deleted file mode 100644 index 217ffe9e4b273741dcd6434767c115ab3b6297f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129048 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

<_iiqkI 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 Pbo|zim&HqhI9~NXnst?y diff --git a/www/manual_lib/fontawesome/webfonts/fa-brands-400.woff b/www/manual_lib/fontawesome/webfonts/fa-brands-400.woff deleted file mode 100644 index a2d80254c3324ed27090e4f5d23847f7c85694c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87352 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

Xfe3df@HCHPEqQF4M3U za2HT@8JO(XlQLfK!ZqY`Fx?I8!2){OO4yN8K>^i-9(f0jm_Ow;-G$L_R(KwB{=V~oY z-$D=v%SIk}KM6bw6L>OmdLZEh%&Bi+%6TC&uPKNNfdl^q*s55HVB%RYN8gJ;`h-wim zL_BRlD8UBVaCav)N8gE16iOTDAcv|FV9Od=}Kl7JN#o-$zk=Ycm5+K!>7b9hO7 z-t^ME7~(1GH!$#runutTIw~v0P;J~si3Y4UBJ>a7E|Gi?RUzA{!KQwMP~pTi4m zyt?;(LwwelPFMYB7mU{!{!LoweF8%F*#T}->D8ev!EbGUB@QLX6|T&LS?9^!sM8O~ KTmHXqf8puCx%H#~ diff --git a/www/manual_lib/fontawesome/webfonts/fa-brands-400.woff2 b/www/manual_lib/fontawesome/webfonts/fa-brands-400.woff2 deleted file mode 100644 index e27b0bfaf805d30fa467a0332b7c61ac95ba616e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74508 zcmV(`K-0f>Pew8T0RR910V50m4FCWD0r(gI0V1*iN&Dvj00000000000000000000 z0000#Mn+Uk92y=5U;v8(5eN#0nRJEGRRJ~vBm<2$3x-|*1Rw>9e+Q@uTdIg zF`l-rjc@?tTlt--7lRs&jNJ|>^%F5#a9npgKvF25bN2uL|NnxdA+nWZTkhI+9c+Rq zpg#JrMNG&1z8&PwbqK2){-7uqpS#ve$wZCZ$}GPVX`n;m@JI9cB$8h32pNG zB91cJ(Pz1hMoGEc-V+CZEbg=3ZlVRQ(Wy)*@@`$Gr+nm7jYED}e4h}i!8q?C8vRsC zeZE-SEB#}0u+jZuBODy!MG4PUf5@EC43kkU!ZJiqrLbrDycl=K(+JpL&wT(7wfwidx!p$g78)eFkAKdjXQW=&x z`}6Uwa{oGD{?&asU7E^v9b-zJzfHKxZ5xAY(O%%`Zx?}3|6lTN_BGfo@W?ozg2uV| z@I-6BH?w=9U-Zr!&60RiYt=)dL}G$cXiygm*zF)|QfiX${{QEF{l2G|mPQ_FD5sj@ zNgC2aK{zd}Ih581Q{wFa0f7Jh~g! zDNN3)0GUsxeKYU6nO2qzxCTtJ;8<}8ObaxSteYhI`+NjNBe&L-iwFaUFtFX;k$@E* ziBISXzNxbmOY+RkLP;OL4xR&&gUPBM9e7{TeP-Wv<6JlP9AkUj6wFOOYNhr`G9+x+ z{{sxwZqg190|XEE^Z)y8Cdnk3(7~P(T!eS~h)69V*mYknkVLf-NC7!efWz~1>%Cw5 z>;D%;EU8gr8??A0dZS9B1XQAI5CcrCIK{3r&oiP=&%X1@vrez||9_df?})vx4U%Tu z3m{2wZ8Niyjoe`xApg>P=`SjF-;z=aDuCD>1)vPi&#m{DuxM6nV@dQj#-JBTZVX1Z zL>h$9ib`35(Wjnz7V05l*I9LUMxS2kz&u0F6LAPhIZt1o4GjCp1f~)V^_g=6B zY5EEbdElF=@Bd6JQN{MneZRHEj=%KX79x)y~>LXMRP7@QaKh=cgQ)U^Mq_jXlp zd8-N}JIG^#=x!?5<5st#<&Y;NfUw*fOa15R=a&{6U<;hTs{n!>97uqngDrIm_DHg9 zS;2wf$FTe%a8%R$uaX}9D*HB)yvu)MknIHwEpPx0U0t$uu~zRz$30xTuie*~X~|01 z5CZ2ho|11_A9#75Z_e+X$khHNP*rAuY{|(xHnB5Fx&R>8_z!=dOZ%55J881(mJ$cp z&Hz#X1%dZ5uWB~id;d~*dqB{3JF%d_FrG9REkEY>n)EoQ zxnsuxK~SG4Up!*8=D=}s9ipcFoJi=yYn^|c>1qcZ_LcEc;J0TOvrK)RJL&r_SIIt- zFJy;ohiu<-o^>wRS700oroK*JzJMImx8qa_eg!38LAn&AB2CFn1%fSImX4!TylZ(~ zyH0_v@&DVKv!%+|xcXF7gia_@vTxp>Ie+iI9ZH`+v^MmXKA$cFDvBl?xSUmZ6c(i- zEE*@8G$_H(t7_GP4mA1K19 z5-6@JA6WHQmv|r(TMdqn@%}0H0Tg!tKKCXq{&0Jcc{J5}HgGAVO%TB9xQ@{iXYIeoPzfZAG}f`1ZS3SQ7BCDlIu|vbd zDm6x@haS4sr4404o$UmPk``NLc@=c0slU9N4iYZ%T5s( z9D&r>wnivv_qXoMZhLvpRQAT|RkCl4Ew>KS{?T@={r;`_w7T{y`@=R42mHwY(CqdV z8{4<+Kkm8fkOcAK#EKNb@1fgnxbCVePCIVDiyA5X`SR|~)`m4>sYDcTw||Y*_}?3^ z{o#SjF1jFrk)Do*N`(FP*<-h<9osf-Shr%?q6PEjOpNt)v{f2PMgOj{(n{J>X(go? z*pJ46Y6Xi!6qb^l{na5!a=EqVYvFzr)`uB5GsHgg?FcAQ3A=C!g|35tV-nLevI};2- z!(gb}y#zoA*5``fCnDg5JN&Mc$3c$xL@xSk1)vaTF!%)UAvp^AfGkNcT#|eoXrv1Z zVxTT?@0Q{#!H9wc?0(4~|49p(fFHvGhX}+d;djyiHxX8Q6t&Rb)sW^G|YG{-B0##kTnx+#L(-0#< zxquxrwxun zBf#Vm5i*)LMmQBL^b80P0~bilyDVB`%tm9MtPGJP#)byenamWER7+&WzSd}vsf`$D ztwLTlQO0Vd&Yl+Xnp_tGVg>C1Na2? z@!2@{^MV%Qox>r{l?*08A2(X*hLMc1dJ0*Lt4bIcW15SMByqEBta7ODt@rD~J)Oq)8p0rm~qtLS;VLtVX-dQ$Lt^^tF4$&P% zosGS3_ZZ8G7?b5n6kR|Faf$>OG#l_abGi~sd05Z!@yo(PQ`Jt2o}12E##}IocSJpp zT?#8lK{5*k2(4!4TxGF9AjA~$wYNhJTntVxb7kk_>?F0QzyNSWrInSce?qT>uwY`V z9EOc@Oa(^NF^RZUB(UKXutO?mO_d`B)y#(`r_8o>xrV|iR||s;JGVa%A&WRob5~nY zQz@*gF#6tbwmioK3WI^#fM|+^)nLhYih-%dJZr6<-FW=rh?GzW6<^>0E$%Q(jb#Z) z?xu;f#?VWttiXV!BZD7`sSmLh8gnhu0vA$G^#37+7S+p4F?hzXwC(|bNy!#xXXQ}3 zk0;j7my(dfYUjR}*-#7dHIp5KD}fH2FT;t9PMAm?lCP-ZDcUD2^9G(vy0tHXE1boH1MQ1^6XU*5L(+v;8hs z3DthG8T`^0L-)3iQg+KXmxySdO?lx8ln)1hF&JUfl=XBmy4s#jooPx_8eYYoCgR} zuKKyM&cgs%xPXEm7{RV3$oO${HWff0&=nd*v`lbO_FRT0mzQK z?JjjPf^MT%Y*4rdDdT8PQqo_5?WL@j3fMi;KA#dQ!DE16MWvWS0fMbYW1h}#{F?tC zDcX7R&TFTR{y$*f^w92?h#{}fIV~rl!%TmH3wwkqYP>KW+UQVBHgs{PC$Nde8`B+C zMFQMrZr8C`ouqTEHWta=ZXoHDkRatAOPjmY^HuY{vu|OEN}L`SgI6`W?>)PG`1GOv zXz(?gN`evJDv6h;plF5MIceJ=o#>zw1>G3{Zbnrq3$>x;d}D2XE^U}zs}+Z@;G#6B z1tqlZwM)!d)*&o0qCVbApO#vWG-F&UX469eSPg)`wCDQHY8Zj*g$jnPA0-_6@sIM|(8|`L#1^4Q? z=AjwU#0;vMwV^5smkNWe2YR8m?tt{tXh7Zh6>7G7FlgeNW_v=UJ|r_s5@rbiNH2C! z=h|dBbn%k!(Q~_{w2TCG2#?0cTL7uo8F9_6+rXoJ`ZFP4V>Hqb>GE`BCG<4l4&mM! ziUR{>c8r;$tTPgfJ)R9&I8sDI>@JVfjRgC>>=EX9zK z*1YHBB&uxXxR@m{#Z>A`-ePqg+ir5!St}%IHp_|x5jWgXr~?s3sA$Q}u*PTrQ|_G5 zN~@F%dO5eKJ1NM%SO{xM<#+rnXr+qzU;~$veQq>?tMYB*zt}&>pRvxJu5Q1yI2((( zPbwnpvBDU6_jo1<5AiL-6u>`;u|qG&K%z7R*%ZS#DoeiGTXi3udx!90!nPo0QQ5K` z*k0H`mOI-m8y1>b(K6mdw$@p#TCG^5U>T9T3UQwBgz@9i>xYY){(o+3o;G*5^oD9t z8PEk^+A6#eiLXmLuzm!-nB-2~lCL%}X-#+yQDGChwCQihTf?qQd>+p;pD&Nn%l+A^ z%oc!;)yXGGB9rx0(-5AV%Mux|MbLBE}66R#Ff1L#m72N0@e~wdu+e!r3&c3baZ5rb4;pWi07_3Db;i91_CElWTG?<-?*Ei4Xnrs={J3+!H@4a)JL|Bzh^)lKh z9~ECGbn-Fcx+5~%CmLZO`*epRof#waGAjqfMh%@|m(GgYYTv1|n>8)AOl)#f(6wTQ zrkn2F6LM}Rk$hAvFV|7xSlBM7{W41=3?|}XQ1_Eb&nZTByLORvKK8A87l;Qf{90*f zi0pV5lf0-+$oL^SAsMCpp2>Pqi%coH22BX>unLlb*ZV9oYt`@G-#TOtLV{1E(sp?zY%|+3X z(xd7M)mjTKJ*r8(_7*(DclmaEGE&*Fp+hbo+MeduLJad~pQMw2i}?7`A#Av@c`+Qt zhD%0?jz{7@^8I;c$le&hEiNT~P;-Jb!^V+EJ#jn0?0fLo5Dh!6clN0k#rutZDmWnA zBh#O*1!piuw)ze$S4y_i_mIuc%~bi&nf~hu5Fo=$K-RB(G$$j>b)QqU1{q1S46dre zVL|BnhHoe$7q4njKlgp}H6;@Aa_ei=-4)3|ZLIDtLWy=#c}gi%N+bmB1*7f-syiUm z5x z_2nf7b;UNv7sikQvw$DLv2QXo*C7C8Ns*%2V2N?asUhkFB;@p^0!5TW^B5CB9H{sS zA^4F0V!nE{03>|bEP{|RL>S8+!A~9)6TB@zx{Dc@!?~n5GZQfU(ju~Te(@KGymUw_ zWHb&52!YV*ypq7Y6>?QpS2wqOD4R{!P+rf#egl^77Ku71d}Fqj5y@o6yvF9u!Z!FyJTBl%nq)bgU}Vpo(slF? zVh)1eCI4pCvd{;eme@2>o^JtcaoQFSRpZ#^Im73iaQq~`|AFREH!=2LY;Vh($55s;YzgtSaPiJ4&s0mPS<&CuJW4Ht_ zh(58L{pkAD@WJ{hHa)05;ERnXFK(IE7k$K#YP2TZ+Bumh9^E|KVa-X9 zQ5L>cyJ>Ow@a|bwU&TdltbAVWA1^OKEeKFC4U^}w-S}c}i(5-$Yz}uH^4;K$h#RDE zf=io(2a(IhW0d87U)%lL#(VFK32$34HQ%kp-Ett?&H{ULDz#i6kJvJmUvbg4pk_GZ zdu3^oGCq5YcEzUwY&k!UMvnfVG&_qRn&FkvVUFhFRU$b5?$56MT|wLuXPnwxN})$y zD5avA_JL0Fm3a>h2;0cHw(AxwW7Ep@b)-M!uVOsX$@GsL+;FAmIF5?WwLdzJY3Fun zMeWrO=k(F@AE~!PSoYJq8(+w=b2`f&kMzL#i^W~Xm+*MbheIJ25#L|FEDYqqsK+#C zV-;9{lr(^~cl`TK#U|8*@T~^t!O+=i*BLw(@#y|#49<YC|;F^%6Or;Qnqoq!%X9>;S?!un*G`n9PhdMHBHGbL;Et(I zv3XA>aE5Yuc3C~#T+|+_L%Z@U>YfLiMXyB_4Uh(nvjoA$UhX`|bG?G2kQ(RBE8o-x zQ;MOsM)Ttz>V!xX16ni-z)dJf&^>WXbgLR%N){rx5CG&q@OsJhMCI`ex~|zPOJIYX{S#ZPZV(!@22+43E%we3e15VV|(2 zRgyr0^neP1j$Z?86`j^JZ0$ilRL>Cf3`5WnC7+=OrVNEV#Rb3t=CL^OaujEUueCv< z`i@{jsycj)+}Hh2F;I1gNi$)QQNsqZWmBRowma(`*F2Qf#D%hF@|kF%&9F!$QGkIc?zrF_GytnQ<uP2I zW?i0sQ}|59y^wo1M!rpV;|Mn1fus=;Cm5T~ts9@nfWwW-@|!&FRU(j@#u0<``v`|F zA&Ucp`)2Z7m>uhlH6Z4@gl%6CM~=TZ{D?hOFj6iUUK7dqxdNNT@z7`YB=t^E&AI(L;TeH0@Cf2y%9BO5w*9*Cv!V~t7vVnk{7Gqqwq974*D;# zrO{8?^3vAg`V(qFq3R|Dtu?XEW8b6y;W+Xh)M~6{;sVNG@G$|YniCa8|E_{KyT0y$ ztS&#~t@JJSL^kn`Q)8gagkYf73Av$yRg5FVgLRpSBZVkcVJ9Lc;AU?%#NIq zkZ*G6u`tgSE@&~N1wENj-*wo>o}K8_UmrLCLQc7)0U4LXPt!I9h} zpT#%q2okkM)WEBP)@TBbCcf1DnYpgE+grqRY&Ccmof#FG-@3YfS+b=yJCa``=(mrz zG#nupM9(lkU z_{P=s>Gr^v?Us_2?#>iQ04=uO&(^(Q$md2I6;AChJ{jb()iO#HwrModRC7yrxm8uO zcvd$lx88g`Pe4nvPQsp+ZK%nmPYc*m`OQnR-ssphZW;VZ=W7`mi4GC_)2Oee`SFu? zoB^xd#dxJI;Y5NITx*+-{(R7HD>ilf5rDNhs%ruEJ{bKEBkF7YSv@)vk0vS``jWD} z9K2+i(qsdpIHkGcmTCIH{-3DbCp%0%9pQjgt8e4M5_2 zP*M7LEdff?jq`>8OVQ+Gy*0k4JnP>U%C=H~bBr2n=L1TcCr?Bl%7`zH`tg77*mb+y z3ci>^)lvY_Trc9(b2@i%ngw`}u9gyitQK!M3Pj6yf<90H!griY>e8E_TF?wy?t$p~ z2#{QKOSlJK*z$460LF~r$-l^9YYsQC+AL82$$JqRD!He_zWXvwr(OVB;qxd(CxA6ZM{-uZ^h~b% zm@WRwhq$8uEQCl}XZY-{RA@Si<`pE2C{0uB`EPq?f==8EYt*#gAuXZjI~X~0T5HvJ zG1!*mE#bDjHY(|=o(y0zU7&-1-6y-Fxs3rp4VK*zfGF<8X`MLSi&GwvB9X1Btc6Ak z&1GYL@%PmQk9ZCQo6i;z?F~dVXebPv~uA&YWQ#`);VK@ z=Dheg3A11(Ml`|djFHAPqkj}MZqeQ%D0!p?%qL>mW3YBPFLD=FpXAvxy?6I|8TBu_#D;9iib;kDR-J3xeQfJsVS3>_-7j? zPHVr0;170f97#hI`$7||M%DAhiM6d16IFSlI2L-oP}%`rp3nyym3p1!b5!&R91aed zmy2H}=#7nvHpz+?qlWfcR0{Rp7*{EUBu`Civ3pYQyBP+Rt(Sz&1ZztRA*^WIHLmG| zmp83?o?#Q*u|~#;$!pn)mgaTIVF9Y&5E?p11^iayM_HQ{p6gGS+EDJv> z8U9aF;XT8?%N}x3`Dw6a6K^zCBdiMGsOG{hA{{VbffN<%F0w%KUi?o=1(G=Du#y=; zhlYmDgtkE)UwnQ*9e+xQD23g#%FCZL#MNbUP9%GFvA^!L(RceAG%9urZJ3woDbwj%MQ zS+=yilRR>@7gqu}=(_&Vz|C8T7p==mP@`YdlHnBlK1mWUy-DW0c+v7hyLE8qllalE zxF^WNGuSItTL)f=44Xq6C3gJNHf@)}Nea@LsWfljTzKJrYh||L4gc|2UKupH zTqAU^|AOlJ*3Dq z1Asg|7hA3eK88Opd%CRm)fj8qGr(BecWPz#LTVK8?qrrikEM@{DMUY!3%$7?=JfF8 z*irb_{qB8rnP}zL{xQC%kz-`dD=3+njUB>fv!)Stkm13Fte4=1+irEDBJD*WKzM9* zNR}Mml`NT4GMzlu1H0UfdM_%}rI1F@c*%20ibApcmqs75FZA!yi~RTz173gOlOso; zV*SnpnJBk_0+`9)J!BmFREMi8;lZ{pSk^GHmA!VCEVfisuOiSO6%29uq$|W#ge95C z5~3dQ8Iycgj4@wKqa+Uh&K}tY&mA@41{9N7j zYd`amp#^P7uRNaaU{slkiY?#_Ae}|~XjtAphIbqWnqnVgEFm9mu`H~uOH`+jdkC6^ zGX-ezy^I*omO_^@!NEyhZh>#1|0WSy;)R!79iw7BNfY zRc3m-jXpEaRu`4GVQAr0k@&}AJj$|SLWvp*)b^s;uCqQ*a}{lmV;uWPeOJS>@#(2> zRto^26s@!}RILBQ4%;LmU7AAecnHF3S%FtLX^AM++GB;ABWKIVTyb?mfL=yJ$|s7cZi!|fUX z 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

-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 diff --git a/www/manual_lib/fontawesome/webfonts/fa-regular-400.eot b/www/manual_lib/fontawesome/webfonts/fa-regular-400.eot deleted file mode 100644 index d62be2fad885f750abe96337567aeec99e5adec7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34388 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 - - - - -Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/www/manual_lib/fontawesome/webfonts/fa-regular-400.ttf b/www/manual_lib/fontawesome/webfonts/fa-regular-400.ttf deleted file mode 100644 index eb3cb5ef66108375fa9405584df000de398d3244..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34092 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 diff --git a/www/manual_lib/fontawesome/webfonts/fa-regular-400.woff2 b/www/manual_lib/fontawesome/webfonts/fa-regular-400.woff2 deleted file mode 100644 index b9344a742ff2089c6bf862dcb92700cbed31cf0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13580 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 S)`hUC=>}_BlnnbyiU9!eaGWRr diff --git a/www/manual_lib/fontawesome/webfonts/fa-solid-900.eot b/www/manual_lib/fontawesome/webfonts/fa-solid-900.eot deleted file mode 100644 index c77baa8d46ab45aff98845588c807e81b73c9d91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 192116 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

EFA9fIE%m5HyEmWrq*L@`PS)m?s1zo^|eW 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 fd>p@0o#BB0sD - - - - -Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/www/manual_lib/fontawesome/webfonts/fa-solid-900.ttf b/www/manual_lib/fontawesome/webfonts/fa-solid-900.ttf deleted file mode 100644 index c6c3dd4d40e6935dbda5f4fc671956c41b768a09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 191832 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 JlKu;TE2wOj%Q1qdB^k`WJpqvW9V}9KNYfOicm{ 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 R-Q)Ro=L@j@Nd4~k{{Y?~eeVDO diff --git a/www/manual_lib/fontawesome/webfonts/fa-solid-900.woff b/www/manual_lib/fontawesome/webfonts/fa-solid-900.woff deleted file mode 100644 index 77c1786227f5377318cf4f52fff9f454874651b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98020 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�Yw6(>3h3Ki)UqBdO#joC{%U+==re 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 DKZR3$ From 3a040128604470321e8ffc43d2879b25a5fee910 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:10:10 -0400 Subject: [PATCH 058/103] remove .bowerrc file We removed Bower a while ago; all packages are managed by npm now --- .bowerrc | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 .bowerrc diff --git a/.bowerrc b/.bowerrc deleted file mode 100644 index e28246d45..000000000 --- a/.bowerrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "directory": "www/lib" -} From 67019e138c04ac3da619cec4463f44575422b368 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:13:48 -0400 Subject: [PATCH 059/103] remove imperial.js Safe to remove as it has been fully replaced by useImperialConfig.ts. emission.config.imperial was not included anywhere --- www/index.js | 1 - www/js/config/imperial.js | 51 --------------------------------------- 2 files changed, 52 deletions(-) delete mode 100644 www/js/config/imperial.js diff --git a/www/index.js b/www/index.js index d57e41295..a55874ad2 100644 --- a/www/index.js +++ b/www/index.js @@ -4,7 +4,6 @@ import './css/main.diary.css'; import 'leaflet/dist/leaflet.css'; import './js/ngApp.js'; -import './js/config/imperial.js'; import './js/stats/clientstats.js'; import './js/splash/referral.js'; import './js/splash/customURL.js'; diff --git a/www/js/config/imperial.js b/www/js/config/imperial.js deleted file mode 100644 index 133626064..000000000 --- a/www/js/config/imperial.js +++ /dev/null @@ -1,51 +0,0 @@ -'use strict'; - -import angular from 'angular'; - -angular.module('emission.config.imperial', ['emission.plugin.logger']) -.factory('ImperialConfig', function($rootScope, DynamicConfig, Logger, $ionicPlatform) { - // change to true if we want to use imperial units such as miles - // I didn't want to do this since the US is one of the only countries that - // still uses imperial units, but it looks like this will primarily be - // funded by a US source, so I guess we have to support this for now. - - const KM_TO_MILES = 0.621371; - - var ic = {} - - ic.getFormattedDistanceInKm = function(dist_in_meters) { - if (dist_in_meters > 1000) { - return Number.parseFloat((dist_in_meters/1000).toFixed(0)); - } else { - return Number.parseFloat((dist_in_meters/1000).toFixed(3)); - } - } - - ic.getFormattedDistanceInMiles = function(dist_in_meters) { - return Number.parseFloat((KM_TO_MILES * ic.getFormattedDistanceInKm(dist_in_meters)).toFixed(1)); - } - - ic.getKmph = function(metersPerSec) { - return (metersPerSec * 3.6).toFixed(2); - }; - - ic.getMph = function(metersPerSecond) { - return (KM_TO_MILES * Number.parseFloat(ic.getKmph(metersPerSecond))).toFixed(2); - }; - - ic.init = function() { - ic.getFormattedDistance = ic.useImperial? ic.getFormattedDistanceInMiles : ic.getFormattedDistanceInKm; - ic.getFormattedSpeed = ic.useImperial? ic.getMph : ic.getKmph; - ic.getDistanceSuffix = ic.useImperial? "mi" : "km"; - ic.getSpeedSuffix = ic.useImperial? "mph" : "kmph"; - } - $ionicPlatform.ready().then(function() { - Logger.log("UI_CONFIG: about to call configReady function in imperial.js"); - DynamicConfig.configReady().then((newConfig) => { - Logger.log("UI_CONFIG: Resolved configReady promise in imperial.js, setting display_config "+JSON.stringify(newConfig.display_config)); - ic.useImperial = newConfig.display_config.use_imperial; - ic.init(); - }).catch((err) => Logger.displayError("Error while handling config in imperial.js", err)); - }); - return ic; -}); From 52129d9dc5d6b771070d7b2f7015de10fb924a4f Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:20:21 -0400 Subject: [PATCH 060/103] don't angularize anything anymore Nothing needs to be angularized to be embedded in an Angular view anymore, because we no longer have any Angular views to embed into. So any uses of angularize are unnecessary now, and instead of defining propTypes we're going to be typing our components with TypeScript. --- www/js/App.tsx | 3 +-- www/js/components/LeafletView.jsx | 7 ------- www/js/components/QrCode.jsx | 6 ------ www/js/control/ProfileSettings.jsx | 3 +-- www/js/diary/LabelTab.tsx | 3 +-- www/js/metrics/MetricsTab.tsx | 3 +-- 6 files changed, 4 insertions(+), 21 deletions(-) diff --git a/www/js/App.tsx b/www/js/App.tsx index c71943f25..aa0068509 100644 --- a/www/js/App.tsx +++ b/www/js/App.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState, createContext, useMemo } from 'react'; -import { angularize, getAngularService } from './angular-react-helper'; +import { getAngularService } from './angular-react-helper'; import { BottomNavigation, Button, useTheme } from 'react-native-paper'; import { useTranslation } from 'react-i18next'; import LabelTab from './diary/LabelTab'; @@ -83,5 +83,4 @@ const App = () => { ); } -angularize(App, 'App', 'emission.app'); export default App; diff --git a/www/js/components/LeafletView.jsx b/www/js/components/LeafletView.jsx index eb0c0bb78..23c8795b1 100644 --- a/www/js/components/LeafletView.jsx +++ b/www/js/components/LeafletView.jsx @@ -1,5 +1,4 @@ import React, { useEffect, useRef, useState } from "react"; -import { angularize } from "../angular-react-helper"; import { object, string } from "prop-types"; import { View } from "react-native"; import { useTheme } from "react-native-paper"; @@ -110,10 +109,4 @@ const stopIcon = L.divIcon({className: 'leaflet-div-icon-stop', iconSize: [18, 1 } }; -LeafletView.propTypes = { - geojson: object, - opts: object -} - -angularize(LeafletView, 'LeafletView', 'emission.main.leaflet'); export default LeafletView; diff --git a/www/js/components/QrCode.jsx b/www/js/components/QrCode.jsx index 797fd3580..7d26cca8c 100644 --- a/www/js/components/QrCode.jsx +++ b/www/js/components/QrCode.jsx @@ -3,7 +3,6 @@ Once the parent components, anyplace this is used, are converted to React, we can remove this wrapper and just use the QRCode component directly */ import React from "react"; -import { angularize } from "../angular-react-helper"; import { string } from "prop-types"; import QRCode from "react-qr-code"; @@ -40,9 +39,4 @@ const QrCode = ({ value, ...rest }) => { return ; }; -QrCode.propTypes = { - value: string, -} - -angularize(QrCode, 'QrCode', 'emission.main.qrcode'); export default QrCode; diff --git a/www/js/control/ProfileSettings.jsx b/www/js/control/ProfileSettings.jsx index 6c7b05c40..8035c9462 100644 --- a/www/js/control/ProfileSettings.jsx +++ b/www/js/control/ProfileSettings.jsx @@ -1,7 +1,7 @@ import React, { useState, useEffect, useContext } from "react"; import { Modal, StyleSheet, ScrollView } from "react-native"; import { Dialog, Button, useTheme, Text, Appbar, IconButton } from "react-native-paper"; -import { angularize, getAngularService } from "../angular-react-helper"; +import { getAngularService } from "../angular-react-helper"; import { useTranslation } from "react-i18next"; import ExpansionSection from "./ExpandMenu"; import SettingRow from "./SettingRow"; @@ -507,5 +507,4 @@ export const settingStyles = StyleSheet.create({ } }); - angularize(ProfileSettings, 'ProfileSettings', 'emission.main.control.profileSettings'); export default ProfileSettings; diff --git a/www/js/diary/LabelTab.tsx b/www/js/diary/LabelTab.tsx index 50127841d..42b173017 100644 --- a/www/js/diary/LabelTab.tsx +++ b/www/js/diary/LabelTab.tsx @@ -7,7 +7,7 @@ */ import React, { useEffect, useState, useRef } from "react"; -import { angularize, getAngularService } from "../angular-react-helper"; +import { getAngularService } from "../angular-react-helper"; import useAppConfig from "../useAppConfig"; import { useTranslation } from "react-i18next"; import { invalidateMaps } from "../components/LeafletView"; @@ -281,5 +281,4 @@ const LabelTab = () => { ); } -angularize(LabelTab, 'LabelTab', 'emission.main.diary.labeltab'); export default LabelTab; diff --git a/www/js/metrics/MetricsTab.tsx b/www/js/metrics/MetricsTab.tsx index c58f2d5c0..748db2b99 100644 --- a/www/js/metrics/MetricsTab.tsx +++ b/www/js/metrics/MetricsTab.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState, useMemo } from "react"; -import { angularize, getAngularService } from "../angular-react-helper"; +import { getAngularService } from "../angular-react-helper"; import { View, ScrollView, useWindowDimensions } from "react-native"; import { Appbar } from "react-native-paper"; import NavBarButton from "../components/NavBarButton"; @@ -149,5 +149,4 @@ export const cardStyles: any = { } } -angularize(MetricsTab, 'MetricsTab', 'emission.main.metricstab'); export default MetricsTab; From ebc353b437e11d77034ac8ace65d8528474223c3 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:21:40 -0400 Subject: [PATCH 061/103] convert LeafletView and QrCode: jsx -> tsx --- www/js/components/{LeafletView.jsx => LeafletView.tsx} | 0 www/js/components/{QrCode.jsx => QrCode.tsx} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename www/js/components/{LeafletView.jsx => LeafletView.tsx} (100%) rename www/js/components/{QrCode.jsx => QrCode.tsx} (100%) diff --git a/www/js/components/LeafletView.jsx b/www/js/components/LeafletView.tsx similarity index 100% rename from www/js/components/LeafletView.jsx rename to www/js/components/LeafletView.tsx diff --git a/www/js/components/QrCode.jsx b/www/js/components/QrCode.tsx similarity index 100% rename from www/js/components/QrCode.jsx rename to www/js/components/QrCode.tsx From bc5a6e38ed8515f0a0290eed9e95fa176e257f63 Mon Sep 17 00:00:00 2001 From: Jack Greenlee Date: Tue, 26 Sep 2023 02:35:11 -0400 Subject: [PATCH 062/103] fix type errors in LeafletView and QrCode Since being converted to Typescript, the Typescript linter picks up on a few things In LeafletView - 'accessibilityRole' is deprecated; just use 'role' - We don't have a type definition for Leaflet maps so we'll use Set In QrCode - For the QRCode style, force type as any. Typescript doesn't believe us that we can style the QRCode component. We definitely can, as changing the style affects the UI, so there must be an error in the typings of the underlying component. - Use the object['property'] way of accessing properties instead of object.property in situations where we don't have typing for the object --- www/js/components/LeafletView.tsx | 6 +++--- www/js/components/QrCode.tsx | 11 +++++------ 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/www/js/components/LeafletView.tsx b/www/js/components/LeafletView.tsx index 23c8795b1..cf26cb933 100644 --- a/www/js/components/LeafletView.tsx +++ b/www/js/components/LeafletView.tsx @@ -1,9 +1,9 @@ import React, { useEffect, useRef, useState } from "react"; -import { object, string } from "prop-types"; import { View } from "react-native"; import { useTheme } from "react-native-paper"; +import L from "leaflet"; -const mapSet = new Set(); +const mapSet = new Set(); export function invalidateMaps() { mapSet.forEach(map => map.invalidateSize()); } @@ -54,7 +54,7 @@ const LeafletView = ({ geojson, opts, ...otherProps }) => { const mapElId = `map-${geojson.data.id.replace(/[^a-zA-Z0-9]/g, '')}`; return ( - +