Permission_Types.ps1xml
<?xml version="1.0" encoding="utf-8" ?>
<Types> <Type> <Name>Permission.TargetPermission</Name> <Members> <MemberSet> <Name>PSStandardMembers</Name> <Members> <PropertySet> <Name>DefaultDisplayPropertySet</Name> <ReferencedProperties> <Name>Path</Name> <Name>NetworkPaths</Name> </ReferencedProperties> </PropertySet> </Members> </MemberSet> </Members> </Type> <Type> <Name>Permission.ParentItemPermission</Name> <Members> <MemberSet> <Name>PSStandardMembers</Name> <Members> <PropertySet> <Name>DefaultDisplayPropertySet</Name> <ReferencedProperties> <Name>Item</Name> <Name>Items</Name> </ReferencedProperties> </PropertySet> </Members> </MemberSet> <ScriptProperty> <Name>Items</Name> <GetScriptBlock> ForEach ($item in $this.json) { [PSCustomObject]@{ PSTypeName = 'Permission.ItemPermission' Item = $item.Grouping Access = $this.PassThru } } </GetScriptBlock> </ScriptProperty> <ScriptProperty> <Name>ItemPaths</Name> <GetScriptBlock>$this.json.Grouping</GetScriptBlock> </ScriptProperty> </Members> </Type> <Type> <Name>Permission.ChildItemPermission</Name> <Members> <MemberSet> <Name>PSStandardMembers</Name> <Members> <PropertySet> <Name>DefaultDisplayPropertySet</Name> <ReferencedProperties> <Name>Item</Name> <Name>Access</Name> </ReferencedProperties> </PropertySet> </Members> </MemberSet> </Members> </Type> <Type> <Name>Permission.Item</Name> <Members> <MemberSet> <Name>PSStandardMembers</Name> <Members> <PropertySet> <Name>DefaultDisplayPropertySet</Name> <ReferencedProperties> <Name>Path</Name> <Name>Access</Name> </ReferencedProperties> </PropertySet> <NoteProperty> <Name>DefaultDisplayProperty</Name> <Value>Path</Value> </NoteProperty> <PropertySet> <Name>DefaultKeyPropertySet</Name> <ReferencedProperties> <Name>Path</Name> </ReferencedProperties> </PropertySet> </Members> </MemberSet> </Members> </Type> </Types> |