pub struct PackageJson {Show 16 fields
pub name: Option<String>,
pub main: Option<String>,
pub module: Option<String>,
pub types: Option<String>,
pub typings: Option<String>,
pub source: Option<String>,
pub browser: Option<Value>,
pub bin: Option<Value>,
pub exports: Option<Value>,
pub dependencies: Option<HashMap<String, String>>,
pub dev_dependencies: Option<HashMap<String, String>>,
pub peer_dependencies: Option<HashMap<String, String>>,
pub peer_dependencies_meta: Option<HashMap<String, PeerDependencyMeta>>,
pub optional_dependencies: Option<HashMap<String, String>>,
pub scripts: Option<HashMap<String, String>>,
pub workspaces: Option<Value>,
}Expand description
Parsed package.json with fields relevant to fallow.
Fields§
§name: Option<String>§main: Option<String>§module: Option<String>§types: Option<String>§typings: Option<String>§source: Option<String>§browser: Option<Value>§bin: Option<Value>§exports: Option<Value>§dependencies: Option<HashMap<String, String>>§dev_dependencies: Option<HashMap<String, String>>§peer_dependencies: Option<HashMap<String, String>>§peer_dependencies_meta: Option<HashMap<String, PeerDependencyMeta>>§optional_dependencies: Option<HashMap<String, String>>§scripts: Option<HashMap<String, String>>§workspaces: Option<Value>Implementations§
Source§impl PackageJson
impl PackageJson
Sourcepub fn load(path: &Path) -> Result<Self, String>
pub fn load(path: &Path) -> Result<Self, String>
Load from a package.json file.
§Errors
Returns an error string when the file cannot be read or parsed as JSON.
Sourcepub fn all_dependency_names(&self) -> Vec<String>
pub fn all_dependency_names(&self) -> Vec<String>
Get all dependency names (production + dev + peer + optional).
Sourcepub fn production_dependency_names(&self) -> Vec<String>
pub fn production_dependency_names(&self) -> Vec<String>
Get production dependency names only.
Sourcepub fn dev_dependency_names(&self) -> Vec<String>
pub fn dev_dependency_names(&self) -> Vec<String>
Get dev dependency names only.
Sourcepub fn optional_dependency_names(&self) -> Vec<String>
pub fn optional_dependency_names(&self) -> Vec<String>
Get optional dependency names only.
Sourcepub fn required_peer_dependency_names(&self) -> Vec<String>
pub fn required_peer_dependency_names(&self) -> Vec<String>
Get required peer dependency names only.
Sourcepub fn entry_points(&self) -> Vec<String>
pub fn entry_points(&self) -> Vec<String>
Extract entry points from package.json fields.
Sourcepub fn exports_subdirectories(&self) -> Vec<String>
pub fn exports_subdirectories(&self) -> Vec<String>
Extract unique subdirectory names referenced by the exports field keys.
For exports like "./compat": { ... }, "./hooks/client": { ... },
this returns ["compat", "hooks"]. Used to discover sub-packages in
projects that define their internal package structure via the exports map
(e.g., preact with compat/, hooks/, debug/ sub-packages).
Sourcepub fn workspace_patterns(&self) -> Vec<String>
pub fn workspace_patterns(&self) -> Vec<String>
Extract workspace patterns from package.json.
Trait Implementations§
Source§impl Clone for PackageJson
impl Clone for PackageJson
Source§fn clone(&self) -> PackageJson
fn clone(&self) -> PackageJson
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more