diff --git a/examples/online.rs b/examples/online.rs index 003e36f..33a1f0f 100644 --- a/examples/online.rs +++ b/examples/online.rs @@ -1,12 +1,13 @@ pub use vrchatapi::apis; -fn main() { +#[tokio::main] +async fn main() { let mut config = apis::configuration::Configuration::default(); config.basic_auth = Some((String::from("username"), Some(String::from("password")))); - let me = apis::authentication_api::get_current_user(&config).unwrap(); - println!("Username: {}", me.username); + let me = apis::authentication_api::get_current_user(&config).await.unwrap(); + println!("Username: {}", me.username.unwrap()); - let online = apis::system_api::get_current_online_users(&config).unwrap(); + let online = apis::system_api::get_current_online_users(&config).await.unwrap(); println!("Current Online Users: {}", online); } \ No newline at end of file diff --git a/generate.sh b/generate.sh index d65a076..a05892c 100755 --- a/generate.sh +++ b/generate.sh @@ -1,11 +1,11 @@ -#!/bin/bash +#!/usr/bin/env bash # Generate Client rm src/apis src/models docs -rf ./node_modules/\@openapitools/openapi-generator-cli/main.js generate \ -g rust \ ---additional-properties=packageName=vrchatapi,supportAsync=false \ +--additional-properties=packageName=vrchatapi,supportAsync=true \ --git-user-id=vrchatapi \ --git-repo-id=vrchatapi-rust \ -o . \ @@ -23,8 +23,14 @@ find src -type f -exec sed -i '/The version of the OpenAPI document/d' {} \; # Cookie storage sed -i 's/Client::new()/Client::builder().cookie_store(true).build().unwrap()/g' src/apis/configuration.rs +sed -i 's/features = \["json", "multipart"\]/features = \["json", "cookies", "multipart"\]/g' Cargo.toml + +#Fix example +printf "\n[dev-dependencies]\ntokio = { version = '1', features = ['macros', 'rt-multi-thread'] }" >> Cargo.toml # https://github.com/OpenAPITools/openapi-generator/issues/14171 +# Replace Option with Option in src/apis +sed -i 's/Option/Option/g' src/apis/*.rs # Replace Option/Option/g' src/apis/*.rs # Replace Option