from util import getChild import time from TigerGraph_helper import tg_helper import plotly.express as px import pyTigerGraphBeta as tg import datetime ############################################ # # DASHBOARD SETTINGS # ############################################ # Controls how entrypoint.py picks it up app_id = 'tigergraph_fraud' logger = getChild(app_id) urlParams = URLParam(app_id) node_id_col = 'id' src_id_col = 'Source' dst_id_col = 'Destination' node_label_col = 'Source_Type' edge_label_col = 'Destination_Type' # Setup a structure to hold metrics metrics = { 'tigergraph_time': 0, 'graphistry_time': 0, 'node_cnt': 0, 'edge_cnt': 0, 'prop_cnt': 0 }
import json, streamlit as st, urllib from util import getChild logger = getChild(__name__) class URLParam: def __init__(self, prefix='d_'): self.prefix = prefix # str * 'a -> 'a def get_field(self, field: str, default=None): field = self.prefix + field query_params = st.experimental_get_query_params() maybe_v = json.loads(urllib.parse.unquote( query_params[field][0])) if field in query_params else None out = default if maybe_v is None else maybe_v logger.debug('resolved default for %s as %s :: %s', field, out, type(out)) return out # str * 'a -> () def set_field(self, field: str, val): field = self.prefix + field query_params = st.experimental_get_query_params() logger.debug('params at set: %s', query_params.items()) logger.debug('rewriting field %s val %s as %s', field, val, urllib.parse.quote(json.dumps(val), safe='')) query_params = st.experimental_set_query_params( **{