ScriptDeck.format.ps1xml

<?xml version="1.0" encoding="utf-16"?>
<!-- Generated with EZOut 1.8.5: Install-Module EZOut or https://github.com/StartAutomating/EZOut -->
<Configuration>
  <ViewDefinitions>
    <View>
      <Name>StreamDeck.Action</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.Action</TypeName>
      </ViewSelectedBy>
      <TableControl>
        <AutoSize />
        <TableHeaders>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
            <Label>Settings</Label>
          </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
          <TableRowEntry>
            <TableColumnItems>
              <TableColumnItem>
                <PropertyName>Name</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>UUID</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <ScriptBlock>
        ($_.Settings | Format-List | Out-String).Trim()
    </ScriptBlock>
              </TableColumnItem>
            </TableColumnItems>
          </TableRowEntry>
        </TableRowEntries>
      </TableControl>
    </View>
    <View>
      <Name>StreamDeck.Plugin</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.Plugin</TypeName>
      </ViewSelectedBy>
      <CustomControl>
        <CustomEntries>
          <CustomEntry>
            <CustomItem>
              <ExpressionBinding>
                <ScriptBlock>
    @(
    ''
    '# ' + $_.Name, '[', $_.Version,']','(', $_.Author,')' -join ' '
    ''
    (' '* 3) + $_.Description -split '(?&gt;\r\n|\n)' -join (' ' + [Environment]::NewLine)
 
 
    ''
    '## Actions:'
    ''
    foreach ($act in $_.actions) {
        (' '* 2),$act.Name,'[',$act.uuid,']' -join ' '
        (' '* 2),'&gt;',$act.tooltip -join ' '
    }
    ''
    ) -join [Environment]::NewLine
</ScriptBlock>
              </ExpressionBinding>
            </CustomItem>
          </CustomEntry>
        </CustomEntries>
      </CustomControl>
    </View>
    <View>
      <Name>StreamDeck.Plugin</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.Plugin</TypeName>
      </ViewSelectedBy>
      <TableControl>
        <TableHeaders>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
          <TableRowEntry>
            <Wrap />
            <TableColumnItems>
              <TableColumnItem>
                <PropertyName>Name</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Version</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Author</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Description</PropertyName>
              </TableColumnItem>
            </TableColumnItems>
          </TableRowEntry>
        </TableRowEntries>
      </TableControl>
    </View>
    <View>
      <Name>StreamDeck.PluginAction</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.PluginAction</TypeName>
      </ViewSelectedBy>
      <TableControl>
        <AutoSize />
        <TableHeaders>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
          <TableColumnHeader>
          </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
          <TableRowEntry>
            <TableColumnItems>
              <TableColumnItem>
                <PropertyName>Name</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>UUID</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Tooltip</PropertyName>
              </TableColumnItem>
            </TableColumnItems>
          </TableRowEntry>
        </TableRowEntries>
      </TableControl>
    </View>
    <View>
      <Name>StreamDeck.Profile</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.Profile</TypeName>
      </ViewSelectedBy>
      <GroupBy>
        <ScriptBlock> if ($_.AppIdentifier) { $_.AppIdentifier } else { 'None' } </ScriptBlock>
        <Label>Application</Label>
      </GroupBy>
      <TableControl>
        <TableHeaders>
          <TableColumnHeader>
            <Alignment>left</Alignment>
            <Width>20</Width>
          </TableColumnHeader>
          <TableColumnHeader>
            <Alignment>left</Alignment>
            <Width>12</Width>
          </TableColumnHeader>
          <TableColumnHeader>
            <Alignment>left</Alignment>
          </TableColumnHeader>
          <TableColumnHeader>
            <Label>Actions</Label>
            <Alignment>left</Alignment>
          </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
          <TableRowEntry>
            <Wrap />
            <TableColumnItems>
              <TableColumnItem>
                <PropertyName>Name</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>DeviceModel</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>DeviceUUID</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <ScriptBlock>
        @(foreach ($prop in $_.Actions.psobject.properties) {
            $prop.Name + ' &gt; ' + $prop.Value.Name
        }) -join [Environment]::NewLine
    </ScriptBlock>
              </TableColumnItem>
            </TableColumnItems>
          </TableRowEntry>
        </TableRowEntries>
      </TableControl>
    </View>
    <View>
      <Name>StreamDeck.ProfileAction</Name>
      <ViewSelectedBy>
        <TypeName>StreamDeck.ProfileAction</TypeName>
      </ViewSelectedBy>
      <CustomControl>
        <CustomEntries>
          <CustomEntry>
            <CustomItem>
              <ExpressionBinding>
                <ScriptBlock>
    $actionSet = $_
 
    @(foreach ($prop in $actionSet.psobject.properties) {
        $prop.Name + ' &gt; ' + $prop.Value.Name
        '[' +$prop.Value.UUID + ']'
        ($prop.Value.Settings | Format-List | Out-String).Trim()
        [Environment]::NewLine
    }) -join [Environment]::NewLine
</ScriptBlock>
              </ExpressionBinding>
            </CustomItem>
          </CustomEntry>
        </CustomEntries>
      </CustomControl>
    </View>
  </ViewDefinitions>
</Configuration>