fix wasm
This commit is contained in:
		| @@ -27,7 +27,7 @@ EXTERNAL SOURCES: | ||||
| SPEC CHECKSUMS: | ||||
|   FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 | ||||
|   macos_window_utils: 933f91f64805e2eb91a5bd057cf97cd097276663 | ||||
|   path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8 | ||||
|   path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 | ||||
|   veilid: a54f57b7bcf0e4e072fe99272d76ca126b2026d0 | ||||
|  | ||||
| PODFILE CHECKSUM: 73d2f470b1d889e27fcfda1d6e6efec66f98af3f | ||||
|   | ||||
| @@ -101,10 +101,10 @@ packages: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: ffi | ||||
|       sha256: ed5337a5660c506388a9f012be0288fb38b49020ce2b45fe1f8b8323fe429f99 | ||||
|       sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.0.2" | ||||
|     version: "2.1.0" | ||||
|   file_utils: | ||||
|     dependency: transitive | ||||
|     description: | ||||
| @@ -138,10 +138,10 @@ packages: | ||||
|     dependency: "direct dev" | ||||
|     description: | ||||
|       name: flutter_lints | ||||
|       sha256: "2118df84ef0c3ca93f96123a616ae8540879991b8b57af2f81b76a7ada49b2a4" | ||||
|       sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.0.2" | ||||
|     version: "2.0.3" | ||||
|   flutter_test: | ||||
|     dependency: "direct dev" | ||||
|     description: flutter | ||||
| @@ -196,10 +196,10 @@ packages: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: macos_window_utils | ||||
|       sha256: b78a210aa70ca7ccad6e7b7b810fb4689c507f4a46e299214900b2a1eb70ea23 | ||||
|       sha256: "43a90473f8786f00f07203e6819dab67e032f8896dafa4a6f85fbc71fba32c0b" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "1.1.3" | ||||
|     version: "1.2.0" | ||||
|   matcher: | ||||
|     dependency: transitive | ||||
|     description: | ||||
| @@ -236,58 +236,58 @@ packages: | ||||
|     dependency: "direct main" | ||||
|     description: | ||||
|       name: path_provider | ||||
|       sha256: "3087813781ab814e4157b172f1a11c46be20179fcc9bea043e0fba36bc0acaa2" | ||||
|       sha256: "909b84830485dbcd0308edf6f7368bc8fd76afa26a270420f34cabea2a6467a0" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.0.15" | ||||
|     version: "2.1.0" | ||||
|   path_provider_android: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: path_provider_android | ||||
|       sha256: "2cec049d282c7f13c594b4a73976b0b4f2d7a1838a6dd5aaf7bd9719196bee86" | ||||
|       sha256: "5d44fc3314d969b84816b569070d7ace0f1dea04bd94a83f74c4829615d22ad8" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.0.27" | ||||
|     version: "2.1.0" | ||||
|   path_provider_foundation: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: path_provider_foundation | ||||
|       sha256: "916731ccbdce44d545414dd9961f26ba5fbaa74bcbb55237d8e65a623a8c7297" | ||||
|       sha256: "1b744d3d774e5a879bb76d6cd1ecee2ba2c6960c03b1020cd35212f6aa267ac5" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.2.4" | ||||
|     version: "2.3.0" | ||||
|   path_provider_linux: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: path_provider_linux | ||||
|       sha256: ffbb8cc9ed2c9ec0e4b7a541e56fd79b138e8f47d2fb86815f15358a349b3b57 | ||||
|       sha256: ba2b77f0c52a33db09fc8caf85b12df691bf28d983e84cf87ff6d693cfa007b3 | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.1.11" | ||||
|     version: "2.2.0" | ||||
|   path_provider_platform_interface: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: path_provider_platform_interface | ||||
|       sha256: "57585299a729335f1298b43245842678cb9f43a6310351b18fb577d6e33165ec" | ||||
|       sha256: bced5679c7df11190e1ddc35f3222c858f328fff85c3942e46e7f5589bf9eb84 | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.0.6" | ||||
|     version: "2.1.0" | ||||
|   path_provider_windows: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: path_provider_windows | ||||
|       sha256: "1cb68ba4cd3a795033de62ba1b7b4564dace301f952de6bfb3cd91b202b6ee96" | ||||
|       sha256: ee0e0d164516b90ae1f970bdf29f726f1aa730d7cfc449ecc74c495378b705da | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.1.7" | ||||
|     version: "2.2.0" | ||||
|   platform: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: platform | ||||
|       sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76" | ||||
|       sha256: "57c07bf82207aee366dfaa3867b3164e4f03a238a461a11b0e8a3a510d51203d" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "3.1.0" | ||||
|     version: "3.1.1" | ||||
|   platform_info: | ||||
|     dependency: transitive | ||||
|     description: | ||||
| @@ -300,10 +300,10 @@ packages: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: plugin_platform_interface | ||||
|       sha256: "6a2128648c854906c53fa8e33986fc0247a1116122f9534dd20e3ab9e16a32bc" | ||||
|       sha256: "43798d895c929056255600343db8f049921cbec94d31ec87f1dc5c16c01935dd" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "2.1.4" | ||||
|     version: "2.1.5" | ||||
|   quiver: | ||||
|     dependency: transitive | ||||
|     description: | ||||
| @@ -416,18 +416,18 @@ packages: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: win32 | ||||
|       sha256: dfdf0136e0aa7a1b474ea133e67cb0154a0acd2599c4f3ada3b49d38d38793ee | ||||
|       sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "5.0.5" | ||||
|     version: "5.0.7" | ||||
|   xdg_directories: | ||||
|     dependency: transitive | ||||
|     description: | ||||
|       name: xdg_directories | ||||
|       sha256: e0b1147eec179d3911f1f19b59206448f78195ca1d20514134e10641b7d7fbff | ||||
|       sha256: f0c26453a2d47aa4c2570c6a033246a3fc62da2fe23c7ffdd0a7495086dc0247 | ||||
|       url: "https://pub.dev" | ||||
|     source: hosted | ||||
|     version: "1.0.1" | ||||
|     version: "1.0.2" | ||||
|   xterm: | ||||
|     dependency: "direct main" | ||||
|     description: | ||||
|   | ||||
| @@ -9,7 +9,7 @@ edition = "2021" | ||||
| crate-type = ["cdylib", "rlib"] | ||||
|  | ||||
| [features] | ||||
| default = ["veilid-core/default"] | ||||
| default = ["veilid-core/default-wasm"] | ||||
| crypto-test = ["veilid-core/crypto-test"] | ||||
|  | ||||
| [dependencies] | ||||
|   | ||||
| @@ -80,28 +80,6 @@ pub fn from_json<T: de::DeserializeOwned + Debug>( | ||||
|     deserialize_json(&s) | ||||
| } | ||||
|  | ||||
| // Parse target | ||||
| fn parse_target(s: String) -> APIResult<veilid_core::Target> { | ||||
|     // Is this a route id? | ||||
|     if let Ok(rrid) = veilid_core::RouteId::from_str(&s) { | ||||
|         let veilid_api = get_veilid_api()?; | ||||
|         let routing_table = veilid_api.routing_table()?; | ||||
|         let rss = routing_table.route_spec_store(); | ||||
|  | ||||
|         // Is this a valid remote route id? (can't target allocated routes) | ||||
|         if rss.is_route_id_remote(&rrid) { | ||||
|             return Ok(veilid_core::Target::PrivateRoute(rrid)); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     // Is this a node id? | ||||
|     if let Ok(nid) = veilid_core::TypedKey::from_str(&s) { | ||||
|         return Ok(veilid_core::Target::NodeId(nid)); | ||||
|     } | ||||
|  | ||||
|     Err(veilid_core::VeilidAPIError::invalid_target()) | ||||
| } | ||||
|  | ||||
| // Utility types for async API results | ||||
| type APIResult<T> = Result<T, veilid_core::VeilidAPIError>; | ||||
| const APIRESULT_UNDEFINED: APIResult<()> = APIResult::Ok(()); | ||||
| @@ -370,7 +348,7 @@ pub fn routing_context_with_sequencing(id: u32, sequencing: String) -> u32 { | ||||
| } | ||||
|  | ||||
| #[wasm_bindgen()] | ||||
| pub fn routing_context_app_call(id: u32, target: String, request: String) -> Promise { | ||||
| pub fn routing_context_app_call(id: u32, target_string: String, request: String) -> Promise { | ||||
|     let request: Vec<u8> = data_encoding::BASE64URL_NOPAD | ||||
|         .decode(request.as_bytes()) | ||||
|         .unwrap(); | ||||
| @@ -383,7 +361,8 @@ pub fn routing_context_app_call(id: u32, target: String, request: String) -> Pro | ||||
|             routing_context.clone() | ||||
|         }; | ||||
|  | ||||
|         let target = parse_target(target)?; | ||||
|         let veilid_api = get_veilid_api()?; | ||||
|         let target = veilid_api.parse_as_target(target_string).await?; | ||||
|         let answer = routing_context.app_call(target, request).await?; | ||||
|         let answer = data_encoding::BASE64URL_NOPAD.encode(&answer); | ||||
|         APIResult::Ok(answer) | ||||
| @@ -391,7 +370,7 @@ pub fn routing_context_app_call(id: u32, target: String, request: String) -> Pro | ||||
| } | ||||
|  | ||||
| #[wasm_bindgen()] | ||||
| pub fn routing_context_app_message(id: u32, target: String, message: String) -> Promise { | ||||
| pub fn routing_context_app_message(id: u32, target_string: String, message: String) -> Promise { | ||||
|     let message: Vec<u8> = data_encoding::BASE64URL_NOPAD | ||||
|         .decode(message.as_bytes()) | ||||
|         .unwrap(); | ||||
| @@ -404,7 +383,8 @@ pub fn routing_context_app_message(id: u32, target: String, message: String) -> | ||||
|             routing_context.clone() | ||||
|         }; | ||||
|  | ||||
|         let target = parse_target(target)?; | ||||
|         let veilid_api = get_veilid_api()?; | ||||
|         let target = veilid_api.parse_as_target(target_string).await?; | ||||
|         routing_context.app_message(target, message).await?; | ||||
|         APIRESULT_UNDEFINED | ||||
|     }) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user