Compare commits

..

No commits in common. "55d45046453e603046b185db47a456bb4679c818" and "91e80b82f3e637d3b97382fc621e19497f2e453b" have entirely different histories.

7 changed files with 1 additions and 64 deletions

View File

@ -6,5 +6,4 @@ description = "PowerShell Scripts for EVERYONE!"
repository = "https://git.itsscb.de/itsscb/BefehlsWerk"
[dependencies]
serde = { version = "1.0.219", features = ["derive", "rc"] }
serde_json = "1.0.140"

View File

@ -120,9 +120,7 @@ foreach ($param in $paramBlock.Parameters) {
} elseif ($attr.TypeName.Name -eq 'ValidateSet') {
$val.values = $attr.PositionalArguments.Value
} elseif ($attr.TypeName.Name -eq 'ValidateScript') {
$val.value = $attr.PositionalArguments.ScriptBlock.Extent.Text
} elseif ($attr.TypeName.Name -eq 'ValidatePattern') {
$val.value = $attr.PositionalArguments.Value
$val.script = $attr.PositionalArguments.ScriptBlock.Extent.Text
}
$validations += [pscustomobject]$val

View File

@ -21,7 +21,6 @@
# Accepts pipeline input by value
[Parameter(ValueFromPipeline = $true, ParameterSetName = 'Set2')]
[ValidatePattern("^[a-zA-Z0-9]*$")]
[string]$InputObject,
# Accepts pipeline input by property name

View File

@ -1,5 +1,3 @@
mod script;
use std::process::Command;
#[allow(dead_code)]

View File

@ -1 +0,0 @@
mod parameter;

View File

@ -1,38 +0,0 @@
use std::sync::Arc;
use serde::{Deserialize, Serialize};
use validation::Validation;
mod validation;
#[derive(Deserialize, Serialize)]
pub struct Parameter {
name: Arc<str>,
data_type: DataType,
is_array: bool,
aliases: Vec<Arc<str>>,
description: Option<Arc<str>>,
help_message: Option<Arc<str>>,
parameter_sets: Vec<ParameterSet>,
validations: Vec<Validation>,
}
#[derive(Deserialize, Serialize)]
pub struct ParameterSet {
name: Arc<str>,
mandatory: bool,
position: Option<u8>,
value_from_pipeline: Option<bool>,
value_from_pipeline_by_property_name: Option<bool>,
}
#[derive(Deserialize, Serialize)]
pub enum DataType {
String,
Int32,
Int64,
Switch,
Bool,
Credential,
SecureString,
}

View File

@ -1,18 +0,0 @@
use std::sync::Arc;
use serde::{Deserialize, Serialize};
#[derive(Deserialize, Serialize)]
#[serde(tag = "type")]
pub enum Validation {
#[serde(rename = "ValidateNotNullOrEmpty")]
NotNullOrEmpty,
#[serde(rename = "ValidateRange")]
Range { min: i32, max: i32 },
#[serde(rename = "ValidateScript")]
Script { value: Arc<str> },
#[serde(rename = "ValidatePattern")]
Pattern { value: Arc<str> },
#[serde(rename = "ValidateSet")]
Set { values: Vec<Arc<str>> },
}