Browse Source

Handle undefined url

pull/4137/head
Rory Powell 5 years ago
parent
commit
2465753af1
  1. 2
      packages/builder/src/helpers/validation/yup/app.js
  2. 6
      packages/builder/src/pages/builder/apps/index.svelte
  3. 6
      packages/builder/src/pages/builder/portal/apps/index.svelte
  4. 4
      packages/server/src/api/controllers/static/index.js

2
packages/builder/src/helpers/validation/yup/app.js

@ -51,7 +51,7 @@ export const url = (validation, { apps, currentApp } = { apps: [] }) => {
}
return !apps
.map(app => app.url)
.some(appUrl => appUrl.toLowerCase() === value.toLowerCase())
.some(appUrl => appUrl?.toLowerCase() === value.toLowerCase())
}
)
.test("valid-url", "Not a valid URL", value => {

6
packages/builder/src/pages/builder/apps/index.svelte

@ -41,7 +41,11 @@
)
function getUrl(app) {
return `/app${app.url}`
if (app.url) {
return `/app${app.url}`
} else {
return `/${app.prodId}`
}
}
</script>

6
packages/builder/src/pages/builder/portal/apps/index.svelte

@ -161,7 +161,11 @@
}
const viewApp = app => {
window.open(`/app${app.url}`)
if (app.url) {
window.open(`/app${app.url}`)
} else {
window.open(`/${app.prodId}`)
}
}
const editApp = app => {

4
packages/server/src/api/controllers/static/index.js

@ -43,7 +43,9 @@ async function getAppIdFromUrl(ctx) {
// search prod apps for a url that matches, exclude dev where id is always used
const apps = await getAllApps(CouchDB, { dev: false })
const app = apps.filter(a => a.url.toLowerCase() === possibleAppUrl)[0]
const app = apps.filter(
a => a.url && a.url.toLowerCase() === possibleAppUrl
)[0]
if (app && app.appId) {
return app.appId

Loading…
Cancel
Save