WikiProduct.types.ps1xml

<?xml version="1.0" encoding="utf-8"?>
<Types>
    <Type>
        <Name>WikiProduct</Name>
        <Members>
            <PropertySet>
                <Name>DefaultDisplayPropertySet</Name>
                <ReferencedProperties>
                    <Name>Page</Name>
                    <Name>Properties</Name>
                    <Name>Labels</Name>
                </ReferencedProperties>
            </PropertySet>
 
            <ScriptProperty>
                <Name>Name</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties.Name)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>Committee</Name>
                <GetScriptBlock>($this.GetPageProperties('pmo').Properties.Committee | ConvertFrom-UtilsHtmlEncoded )</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>Owner</Name>
                <GetScriptBlock>($this.GetPageProperties('pmo').Properties.PM)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>ServiceProvider</Name>
                <GetScriptBlock>($this.GetPageProperties('pmo').Properties.'Service Provider')</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>DomainLinks</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties.Domain | Select-LinkCard )</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>Description</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties.Description)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>StatusText</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties.Status | Select-Text )</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>AliasName</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties.Title)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>FrontendTechnology</Name>
                <GetScriptBlock>($this.GetPageProperties('pmo').Properties.'Frontend Technology' | Select-VersionLinkCard)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>BackendTechnology</Name>
                <GetScriptBlock>($this.GetPageProperties('pmo').Properties.'Backend Technology' | Select-VersionLinkCard)</GetScriptBlock>
            </ScriptProperty>
 
            <ScriptProperty>
                <Name>AllProperties</Name>
                <GetScriptBlock>($this.GetPageProperties('info').Properties)</GetScriptBlock>
            </ScriptProperty>
 
            <ScriptProperty>
                <Name>ArtifactType</Name>
                <GetScriptBlock>($this.GetType().Name)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageID</Name>
                <GetScriptBlock>($this.Page.ID)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageTitle</Name>
                <GetScriptBlock>($this.Page.Title)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageBody</Name>
                <GetScriptBlock>($this.Page.Body)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageSpaceKey</Name>
                <GetScriptBlock>($this.Page.Space.Key)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageSpace</Name>
                <GetScriptBlock>($this.Page.Space.Name)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageVersion</Name>
                <GetScriptBlock>($this.Page.Version.Number)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageLastUpdated</Name>
                <GetScriptBlock>($this.Page.Version.When)</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageUri</Name>
                <GetScriptBlock>([uri]::new($this.Page.URL))</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageEditUri</Name>
                <GetScriptBlock>([uri]::new($this.Page.URL -replace '/(\d+)$','/edit-v2/$1'))</GetScriptBlock>
            </ScriptProperty>
            <ScriptProperty>
                <Name>PageAncestors</Name>
                <GetScriptBlock>($this.Page.Ancestors)</GetScriptBlock>
            </ScriptProperty>
        </Members>
    </Type>
</Types>