feat(manifest:npm): add nomodules manifest struct

master
Ashley Williams 7 years ago
parent 64c5a22ff6
commit 1985db371f
  1. 3
      src/manifest/npm/mod.rs
  2. 20
      src/manifest/npm/nomodules.rs

@ -1,13 +1,16 @@
mod commonjs;
mod esmodules;
mod nomodules;
pub mod repository;
pub use self::commonjs::CommonJSPackage;
pub use self::esmodules::ESModulesPackage;
pub use self::nomodules::NoModulesPackage;
#[derive(Serialize)]
#[serde(untagged)]
pub enum NpmPackage {
CommonJSPackage(CommonJSPackage),
ESModulesPackage(ESModulesPackage),
NoModulesPackage(NoModulesPackage),
}

@ -0,0 +1,20 @@
use manifest::npm::repository::Repository;
#[derive(Serialize)]
pub struct NoModulesPackage {
pub name: String,
#[serde(skip_serializing_if = "Vec::is_empty")]
pub collaborators: Vec<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
pub version: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub license: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub repository: Option<Repository>,
#[serde(skip_serializing_if = "Vec::is_empty")]
pub files: Vec<String>,
pub browser: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub types: Option<String>,
}
Loading…
Cancel
Save