MAIDR JavaScript API
    Preparing search index...

    Function readDashboardGeometry

    • Read each worksheet's place on the dashboard, keyed by worksheet name.

      Dashboard.objects and every member of a DashboardObject are required in Tableau's shipped declarations and none of them carries an @since tag, so the contract sets no version floor — which is exactly why none of it is trusted here. The host page loads whichever build of the Embedding library it likes, and the real case this covers is an older one: a library that predates the dashboard-object surface simply has no objects, and a partial one could hand back an object with no position. Every access below is therefore guarded, and any failure to read a worksheet's geometry leaves that worksheet out of the map rather than inventing a place for it. The extractor requires geometry for every surviving worksheet before it will build a grid, so a gap here is a whole-figure fall back to the N×1 column — never a half-grid.

      Only worksheet objects are considered. Legends, titles, filters, blanks and extensions — MAIDR's own zone among them — are furniture: they hold no data, contribute no subplot, and their positions would only distort the banding.

      Matching is by object.worksheet.name, never by object.name — the latter is the object's authoring name, which an author can change without renaming the sheet inside it. Tableau documents dashboard.worksheets as exactly the worksheets of the objects whose type is worksheet, so the names line up by construction.

      Parameters

      • sheet: TableauSheet

        The sheet to read. Anything but a dashboard yields nothing.

      Returns Map<string, TableauWorksheetGeometry>

      Worksheet name → geometry, empty when the sheet reported none.