From db0a55b746fc225087aef0114ace7d177711d55a Mon Sep 17 00:00:00 2001 From: sballesteros Date: Wed, 6 Nov 2019 15:56:37 -0800 Subject: [PATCH] required and layout fixes --- deploy-app.sh | 8 +++++- src/components/extension-splash.css | 2 +- src/components/header-bar.js | 6 +++- src/components/home.js | 2 +- src/components/icon-button.css | 2 +- src/components/left-side-panel.js | 7 +++-- src/components/profile.css | 2 +- src/components/rapid-form-fragment.js | 12 ++++++-- src/components/settings.css | 5 ++-- src/constants.js | 40 ++++++++++++++++++--------- src/utils/actions.js | 4 ++- 11 files changed, 63 insertions(+), 27 deletions(-) diff --git a/deploy-app.sh b/deploy-app.sh index 02f7260..fee551f 100755 --- a/deploy-app.sh +++ b/deploy-app.sh @@ -12,7 +12,13 @@ zip -r app.zip *.json *.js dist/* src/* public/* views/* scripts/* test/* az webapp config appsettings set --resource-group "rapid-prereview" --name "rapid-prereview" --settings SCM_DO_BUILD_DURING_DEPLOYMENT=true -az webapp config set --resource-group "rapid-prereview" --name "rapid-prereview" --startup-file "npm run start:prod" + +## https://docs.microsoft.com/en-us/azure/app-service/containers/configure-language-nodejs#run-with-pm2 + +# az webapp config set --resource-group "rapid-prereview" --name "rapid-prereview" --startup-file "npm run start:prod" + +# Azure App service will start the file with pm2 +az webapp config set --resource-group "rapid-prereview" --name "rapid-prereview" --startup-file "./dist/server.js" az webapp deployment source config-zip --resource-group "rapid-prereview" --name "rapid-prereview" --src app.zip diff --git a/src/components/extension-splash.css b/src/components/extension-splash.css index 8b74b5a..d8025be 100644 --- a/src/components/extension-splash.css +++ b/src/components/extension-splash.css @@ -14,7 +14,7 @@ margin: 0 auto; background-color: white; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.15); - min-height: 100vh; + min-height: calc(100vh - var(--header-bar-height) - 2*var(--lgrd)); padding: var(--mgrd) var(--xlgrd); box-sizing: border-box; position: relative; diff --git a/src/components/header-bar.js b/src/components/header-bar.js index 92a79d1..686fc7c 100644 --- a/src/components/header-bar.js +++ b/src/components/header-bar.js @@ -17,10 +17,14 @@ export default function HeaderBar({ onClickMenuButton }) {
{!!onClickMenuButton && ( - + )} diff --git a/src/components/home.js b/src/components/home.js index a85547f..5110329 100644 --- a/src/components/home.js +++ b/src/components/home.js @@ -61,7 +61,7 @@ export default function Home() { /> )} { + onClickMenuButton={e => { setShowLeftPanel(!showLeftPanel); }} /> diff --git a/src/components/icon-button.css b/src/components/icon-button.css index ca38f95..3b2ff88 100644 --- a/src/components/icon-button.css +++ b/src/components/icon-button.css @@ -6,7 +6,7 @@ height: var(--lgrd); width: var(--lgrd); cursor: pointer; - flex: 0 0 var(--lgrd); + /*flex: 0 0 var(--lgrd);*/ &:focus { outline: none; diff --git a/src/components/left-side-panel.js b/src/components/left-side-panel.js index b494c63..35ae06f 100644 --- a/src/components/left-side-panel.js +++ b/src/components/left-side-panel.js @@ -15,8 +15,11 @@ export default function LeftSidePanel({ // inside click return; } - // outside click - onClickOutside(); + + if (!e.target.hasAttribute('data-noclickoutside')) { + // outside click + onClickOutside(); + } } if (visible) { diff --git a/src/components/profile.css b/src/components/profile.css index 99887f8..f5e9677 100644 --- a/src/components/profile.css +++ b/src/components/profile.css @@ -14,7 +14,7 @@ margin: 0 auto; background-color: white; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.15); - min-height: 100vh; + min-height: calc(100vh - var(--header-bar-height) - 2*var(--lgrd)); } & .profile__header { diff --git a/src/components/rapid-form-fragment.js b/src/components/rapid-form-fragment.js index ebe1369..6081d0e 100644 --- a/src/components/rapid-form-fragment.js +++ b/src/components/rapid-form-fragment.js @@ -17,7 +17,7 @@ export default function RapidFormFragment({ answerMap = {}, onChange }) { ); const [isOpenedMap, setIsOpenedMap] = useState( - yesNoQuestions.map((map, q) => { + yesNoQuestions.reduce((map, q) => { map[q.identifier] = false; return map; }, {}) @@ -28,7 +28,7 @@ export default function RapidFormFragment({ answerMap = {}, onChange }) { return (
- {yesNoQuestions.map(({ identifier, question, help }, i) => { + {yesNoQuestions.map(({ identifier, question, help, required }, i) => { const answer = answerMap[identifier]; return ( @@ -41,6 +41,7 @@ export default function RapidFormFragment({ answerMap = {}, onChange }) { { + e.preventDefault(); setIsOpenedMap( Object.assign({}, isOpenedMap, { [identifier]: !isOpenedMap[identifier] @@ -55,6 +56,7 @@ export default function RapidFormFragment({ answerMap = {}, onChange }) {
- {freeFormQuestions.map(({ identifier, question }) => { + {freeFormQuestions.map(({ identifier, question, required }) => { const answer = answerMap[identifier]; return ( @@ -135,6 +140,7 @@ export default function RapidFormFragment({ answerMap = {}, onChange }) {