PluginManifest.fromJson constructor
PluginManifest.fromJson(
- Map<String, dynamic> json
)
Implementation
factory PluginManifest.fromJson(Map<String, dynamic> json) {
return PluginManifest(
name: json['name'] as String? ?? '',
version: json['version'] as String?,
description: json['description'] as String?,
author: json['author'] is Map<String, dynamic>
? PluginAuthor.fromJson(json['author'] as Map<String, dynamic>)
: null,
homepage: json['homepage'] as String?,
repository: json['repository'] as String?,
license: json['license'] as String?,
keywords: (json['keywords'] as List?)?.cast<String>(),
dependencies: (json['dependencies'] as List?)?.cast<String>(),
hooks: json['hooks'] as Map<String, dynamic>?,
commands: json['commands'],
agents: json['agents'],
skills: json['skills'],
outputStyles: json['outputStyles'],
mcpServers: json['mcpServers'] as Map<String, dynamic>?,
userConfig: json['userConfig'] is Map<String, dynamic>
? (json['userConfig'] as Map<String, dynamic>).map(
(k, v) => MapEntry(
k,
PluginUserConfigOption.fromJson(v as Map<String, dynamic>),
),
)
: null,
channels: (json['channels'] as List?)
?.map((e) => Map<String, dynamic>.from(e as Map))
.toList(),
);
}