diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2021-02-26 22:36:26 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-26 12:06:26 -0500 |
commit | 4b56537ea9d5c3e5f60ca817ed00c55dcbb2131c (patch) | |
tree | 175b10666df4af715268dc3a32306214c0a88859 | |
parent | 07eb0090445c22001ba50e71359839250c1b749a (diff) |
chore: move crypto types to op_crates/crypto (#9609)
-rw-r--r-- | cli/build.rs | 6 | ||||
-rw-r--r-- | cli/dts/lib.deno.shared_globals.d.ts | 23 | ||||
-rw-r--r-- | op_crates/crypto/lib.deno_crypto.d.ts | 26 | ||||
-rw-r--r-- | op_crates/crypto/lib.rs | 5 |
4 files changed, 38 insertions, 22 deletions
diff --git a/cli/build.rs b/cli/build.rs index edc524bbc..a54bf962c 100644 --- a/cli/build.rs +++ b/cli/build.rs @@ -8,6 +8,7 @@ use deno_core::serde_json::json; use deno_core::serde_json::Value; use deno_core::JsRuntime; use deno_core::RuntimeOptions; +use deno_runtime::deno_crypto; use deno_runtime::deno_fetch; use deno_runtime::deno_web; use deno_runtime::deno_websocket; @@ -62,6 +63,7 @@ fn create_compiler_snapshot( op_crate_libs.insert("deno.web", deno_web::get_declaration()); op_crate_libs.insert("deno.fetch", deno_fetch::get_declaration()); op_crate_libs.insert("deno.websocket", deno_websocket::get_declaration()); + op_crate_libs.insert("deno.crypto", deno_crypto::get_declaration()); // ensure we invalidate the build properly. for (_, path) in op_crate_libs.iter() { @@ -262,6 +264,10 @@ fn main() { "cargo:rustc-env=DENO_WEBSOCKET_LIB_PATH={}", deno_websocket::get_declaration().display() ); + println!( + "cargo:rustc-env=DENO_CRYPTO_LIB_PATH={}", + deno_crypto::get_declaration().display() + ); println!("cargo:rustc-env=TARGET={}", env::var("TARGET").unwrap()); println!("cargo:rustc-env=PROFILE={}", env::var("PROFILE").unwrap()); diff --git a/cli/dts/lib.deno.shared_globals.d.ts b/cli/dts/lib.deno.shared_globals.d.ts index 9cfe45cfa..4332b757b 100644 --- a/cli/dts/lib.deno.shared_globals.d.ts +++ b/cli/dts/lib.deno.shared_globals.d.ts @@ -8,6 +8,7 @@ /// <reference lib="deno.web" /> /// <reference lib="deno.fetch" /> /// <reference lib="deno.websocket" /> +/// <reference lib="deno.crypto" /> declare namespace WebAssembly { /** @@ -343,8 +344,6 @@ interface VoidFunction { */ declare function queueMicrotask(func: VoidFunction): void; -declare var crypto: Crypto; - /** Registers an event listener in the global scope, which will be called * synchronously whenever the event `type` is dispatched. * @@ -416,26 +415,6 @@ declare interface Console { declare var console: Console; -declare interface Crypto { - readonly subtle: null; - getRandomValues< - T extends - | Int8Array - | Int16Array - | Int32Array - | Uint8Array - | Uint16Array - | Uint32Array - | Uint8ClampedArray - | Float32Array - | Float64Array - | DataView - | null, - >( - array: T, - ): T; -} - interface MessageEventInit<T = any> extends EventInit { data?: T; origin?: string; diff --git a/op_crates/crypto/lib.deno_crypto.d.ts b/op_crates/crypto/lib.deno_crypto.d.ts new file mode 100644 index 000000000..a00757e71 --- /dev/null +++ b/op_crates/crypto/lib.deno_crypto.d.ts @@ -0,0 +1,26 @@ +// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license. + +/// <reference no-default-lib="true" /> +/// <reference lib="esnext" /> + +declare var crypto: Crypto; + +declare interface Crypto { + readonly subtle: null; + getRandomValues< + T extends + | Int8Array + | Int16Array + | Int32Array + | Uint8Array + | Uint16Array + | Uint32Array + | Uint8ClampedArray + | Float32Array + | Float64Array + | DataView + | null, + >( + array: T, + ): T; +} diff --git a/op_crates/crypto/lib.rs b/op_crates/crypto/lib.rs index 61290080d..b8fe3fefb 100644 --- a/op_crates/crypto/lib.rs +++ b/op_crates/crypto/lib.rs @@ -11,6 +11,7 @@ use deno_core::ZeroCopyBuf; use rand::rngs::StdRng; use rand::thread_rng; use rand::Rng; +use std::path::PathBuf; pub use rand; // Re-export rand @@ -41,3 +42,7 @@ pub fn op_crypto_get_random_values( Ok(json!({})) } + +pub fn get_declaration() -> PathBuf { + PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("lib.deno_crypto.d.ts") +} |