Adding helper for auth key resolution

This commit is contained in:
Peter Morton 2023-10-11 19:21:58 -05:00
parent 902189c34d
commit e4f4766f5f
2 changed files with 36 additions and 48 deletions

View File

@ -1,5 +1,6 @@
<script setup>
import { ref, onMounted } from "vue";
import { getAuthKeyFromProperties } from '../helpers/index'
import * as d3 from "d3";
import * as align from "d3-sankey";
@ -34,41 +35,35 @@ function fetchData() {
//clear errors
errorMessage.value = null;
var authKey;
if (props.sessionIdentifier.length > 0) {
authKey = props.sessionIdentifier;
} else if (props.username.length > 0) {
authKey = props.username;
} else {
errorMessage.value =
"_sessionIdentifier or username must be passed as query params.";
try {
var authKey = getAuthKeyFromProperties(props);
} catch (error) {
console.error(error);
errorMessage.value = error;
return;
}
if (authKey) {
fetch(
`${import.meta.env.VITE_EO_SERVICES_URL}/api/interactions-flow?filter=${
multiSelected.value
}&authKey=${authKey}`,
{
credentials: "include", // fetch won't send cookies unless you set credentials
fetch(
`${import.meta.env.VITE_EO_SERVICES_URL}/api/interactions-flow?filter=${multiSelected.value
}&authKey=${authKey}`,
{
credentials: "include", // fetch won't send cookies unless you set credentials
}
)
.then((response) => {
// check for error response
if (!response.ok) {
// get error message from body or default to response statusText
const error = response.data || response.statusText;
return Promise.reject(error);
}
)
.then((response) => {
// check for error response
if (!response.ok) {
// get error message from body or default to response statusText
const error = response.data || response.statusText;
return Promise.reject(error);
}
response.json().then((data) => {
generateSankey(data);
});
})
.catch((error) => {
console.log(error);
errorMessage.value = error;
response.json().then((data) => {
generateSankey(data);
});
}
})
.catch((error) => {
console.error(error);
errorMessage.value = error;
});
}
function generateSankey(data) {
@ -104,9 +99,9 @@ function generateSankey(data) {
.nodeId((d) => d.name)
.nodeAlign(
align[
`sankey${alignSelected.value[0].toUpperCase()}${alignSelected.value.slice(
1
)}`
`sankey${alignSelected.value[0].toUpperCase()}${alignSelected.value.slice(
1
)}`
]
) // d3.sankeyLeft, etc.
.nodeWidth(15)
@ -178,10 +173,10 @@ function generateSankey(data) {
linkColor === "source-target"
? (d) => `url(#${d.uid})`
: linkColor === "source"
? (d) => color(d.source.category)
: linkColor === "target"
? (d) => color(d.target.category)
: linkColor
? (d) => color(d.source.category)
: linkColor === "target"
? (d) => color(d.target.category)
: linkColor
)
.attr("stroke-width", (d) => Math.max(1, d.width));

View File

@ -1,5 +1,6 @@
<script setup>
import { ref } from "vue";
import { getAuthKeyFromProperties } from '../helpers/index'
import ContactTable from "../components/ContactTable.vue";
import ContactsSummary from "../components/ContactsSummary.vue";
@ -23,16 +24,8 @@ function fetchData() {
errorMessage.value = null;
contactData.value = null;
var authKey;
var authKey = getAuthKeyFromProperties(props);
if (props.sessionIdentifier.length > 0) {
authKey = props.sessionIdentifier;
} else if (props.username.length > 0) {
authKey = props.username;
} else {
errorMessage.value =
"_sessionIdentifier or username must be passed as query params.";
}
if (authKey) {
fetch(
`${