import asyncio
import sys
import js
import pathlib
import tomllib


from pyodide.ffi import create_proxy
from pyodide.http import pyfetch

import helpers

import rdflib


FILE = pathlib.Path(".")

SINOPIA = rdflib.Namespace("http://sinopia.io/vocabulary/")

from bluecore_api import bluecore_login, save_bluecore, search_bluecore, set_environment
from sinopia_api import show_groups
from load_rdf import bibframe_sparql as bf_sparql_widget, build_graph, download_graph, load_cbd_file, load_uri
from marc import bf2marc, marc2bf
from query_rdf import download_query_results, run_query, run_summary_query
from validation import validate

bf_sparql_widget("bf-sparql-query")

async def retrieve_version():
    pyproject_request = await pyfetch("pyproject.toml")
    pyproject = await pyproject_request.text()
    project = tomllib.loads(pyproject)
    version = project["project"]["version"]
    return version


version = await retrieve_version()

helpers.set_versions(version)

splash_modal_close_btn = js.document.getElementById("splashModalCloseBtn")
splash_modal_close_btn.click()
