IFClite TypeScript API
    Preparing search index...

    Function toScheduleRows

    • Project a flat pre-order ListGroup[] (as returned by summariseListRows) down to a schedule / pivot presentation (issue #1790 round 2): ONE row per group-value tuple — the LEAF groups only, in the same order they appear in groups. Because groups is a pre-order flattening of the group tree, every parent's leaf descendants stay contiguous, so the result is already in the right order for a Bonsai-style schedule table (rows for one outer group value sit together) without re-sorting here.

      levelCount is the number of active grouping columns — typically groupingColumnIds(grouping).filter(id => columns still has id).length. With 0 levels (nothing to pivot on) or no groups at all, this returns [] rather than inventing a single all-rows row.

      Parameters

      • groups: ListGroup[] | undefined
      • levelCount: number

      Returns ListScheduleRow[]