I swear this used to work

I am revisiting an old dashboard I made for a customer some time back (below). In essence, they are a large organization and they love their acronyms. So the dashboard pulls from a csv of current acronyms and provides Definition and Notes on each. User with access will also see a button that allows them to add new acronyms to the table. The intent is to then update the csv from the table’s data.

function update {
    [CmdLetBinding()]
    Param (
        [Parameter(Mandatory, Position=1)]
            [string] $Acronym,
        [Parameter(Mandatory, Position=2)]
            [string] $Definition,
        [Parameter(Mandatory, Position=3)]
            [string] $Notes
    )

    $aParams = [ordered]@{
        Acronym = $Acronym
        Definition = $Definition
        Notes = $Notes
    }

    $session:tableData += New-Object PSObject -Property $aParams
}

$Pages += New-UDPage -Name 'Acronyms' -Content {
    $aAcronyms = Import-Csv -Path "Acronyms.csv"
    $acronymPageLayout = '{"lg":[{"w":3,"h":1,"x":0,"y":0,"i":"grid-element-BLank1","moved":false,"static":false},{"w":12,"h":1,"x":0,"y":16,"i":"grid-element-BLank2","moved":false,"static":false},{"w":12,"h":15,"x":0,"y":1,"i":"grid-element-acroTable","moved":false,"static":false},{"w":2,"h":1,"x":10,"y":17,"i":"grid-element-new","moved":false,"static":false}]}'
    
    New-UDGridLayout -Content {
        New-UDTypography -Id "BLank1" -Text ""
        New-UDTypography -Id "BLank2" -Text ""

        $aColumns = @(
            New-UDTableColumn -Property Acronym -Title "Acronym"
            New-UDTableColumn -Property Definition -Title "Definition"
            New-UDTableColumn -Property Notes -Title "Notes"
        )

        $session:tableData = ,@(
            $aAcronyms
        )

        New-UDDynamic -Id "acroTable" -Content {
            New-UDTable -Data $session:tableData -Columns $aColumns
        } -LoadingComponent {
            "Loading"
        }

        New-UDButton -Id "new" -Text "Add New Acronym" -OnClick {          
            Show-UDModal -Content {
                New-UDGrid -Container -Content {
                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTypography -Text ""
                    }

                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTypography -Text "Enter New Acronym" -Style @{
                            'font-size' = "24px"
                        }
                    }

                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTypography -Text ""
                    }

                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTextbox -id "acronymText" -Label "Acronym"
                    }

                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTextbox -id "defineText" -Label "Definition"
                    }

                    New-UDGrid -Item -MediumSize 4 -Content {
                        New-UDTextbox -id "notesText" -Label "Notes"
                    }
                        
                    New-UDGrid -Item -MediumSize 12 -Content {
                        New-UDTypography -Text " " -Style @{
                            whiteSpace = 'pre'
                        }
                    }

                    New-UDGrid -Item -MediumSize 10 -Content {
                        New-UDTypography -Text ""
                    }

                    New-UDGrid -Item -MediumSize 2 -Content {
                        New-UDButton -Id "submitNew" -Text "Save Acronym" -OnClick {
                            $aFields = @()
                            If ([string]::IsNullOrEmpty((Get-UDElement -Id "acronymText").value)) {$aFields += "Acronym"}
                            If ([string]::IsNullOrEmpty((Get-UDElement -Id "defineText").value)) {$aFields += "Definition"}
                            If ([string]::IsNullOrEmpty((Get-UDElement -Id "notesText").value)) {$aFields += "Notes"}
                            If ($aFields.Count -gt 0) {
                                Show-UDToast -Message "Please fill in all three fields" -Duration 3000
                            } else {
                                update -Acronym (Get-UDElement -Id "acronymText").value -Definition (Get-UDElement -Id "defineText").value -Notes (Get-UDElement -Id "notesText").value
                                Start-Sleep -Milliseconds 250
                                Sync-UDElement -Id "acroTable"
                                Hide-UDModal
                            }
                        }
                    }
                }
            }
        }

    } -Layout $acronymPageLayout
}


New-UDDashboard -Title 'TestDashboard' -Pages $Pages

This all works as expected for adding a new acronym to the table. However, I thought I was able to do something like this to loop through the table data afterward, based on the help file saying “Once you have the element, you can use the CurrentData property of the element to get an array of currently displayed rows”:

$aData = Get-UDElement -Id 'acroTable'

foreach ($row in $aData.CurrentData) {
   #Append row to csv if not already there
}

However when I do this, I don’t see a Data or CurrentData property at all:

Show-UDModal -Content {
   New-UDElement -Tag 'pre' -Content {
      $aData | ConvertTo-Json
   }
}

Am I doing something wrong, or did something change with the way data is output from the table (again, old script)?

Product: PowerShell Universal
Version: 3.9.1

Update, I tried just the example from the docs, and for that I do see the CurrentData option. So am playing around with whether this is because I am not converting the $aAcronyms with Out-TableData like in the example.