Skip to content

Commit

Permalink
chore: move crypto types to op_crates/crypto (denoland#9609)
Browse files Browse the repository at this point in the history
  • Loading branch information
littledivy committed Feb 26, 2021
1 parent 07eb009 commit 4b56537
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 22 deletions.
6 changes: 6 additions & 0 deletions cli/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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() {
Expand Down Expand Up @@ -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());
Expand Down
23 changes: 1 addition & 22 deletions cli/dts/lib.deno.shared_globals.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
/// <reference lib="deno.web" />
/// <reference lib="deno.fetch" />
/// <reference lib="deno.websocket" />
/// <reference lib="deno.crypto" />

declare namespace WebAssembly {
/**
Expand Down Expand Up @@ -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.
*
Expand Down Expand Up @@ -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;
Expand Down
26 changes: 26 additions & 0 deletions op_crates/crypto/lib.deno_crypto.d.ts
Original file line number Diff line number Diff line change
@@ -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;
}
5 changes: 5 additions & 0 deletions op_crates/crypto/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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")
}

0 comments on commit 4b56537

Please sign in to comment.