Persistence for indexed (pattern-matching) inputs

Hello,

in my dash app I use pattern-matching callbacks according to https://dash.plotly.com/pattern-matching-callbacks for the user to select data for analysis.

Now, I have a multi-page app with different data, and I would like to user persistence to re-user the selection already made by the user.

Persistence works for simple dcc.Dropdown and dcc.Input fields.

But, when the page is reloaded, the callback is triggered,
however the list where the persisted state should be passed to the callback is always empty.

The input elements are dynamically created like this:

                html.Div([
                    dcc.Input(
                        value=row_name,
                        id={'index': i, 'type': 'index-rowname'},
                        persistence=True,
                        persistence_type='session'
                    ),
                    html.Div(
                        dcc.Input(
                            value=row_fach,
                            id={'index': i, 'type': 'index-rowtopics'},
                            persistence=True,
                            persistence_type='session'
                        ),
                        hidden=True,
                    )

and the callback is defined like this:

    @dash_app.callback(
        Output("data-rows-container", "children"),
        Output("data-row-name", "value"),
        Input("add-datarow-btn", "n_clicks"),
        State("data-row-name", "value"),
        State({'index': ALL, 'type': 'index-rowname'}, 'value'),
        State({'index': ALL, 'type': 'index-rowtopics'}, 'value'),
    )
    def edit_data_rows(add, new_item, row_names, row_faecher):
        ...

Is this supposed to be working with indexed properties or would I have to use dcc.Store instead?