I’m also curious about this. My app needs to have some repeated blocks. It would be convenient to allow people to manage them in the theme customization area. But the blocks attribute doesn’t seem to be supported in the schema section for an app extension. It would be nice to have a full schema reference so we know what all is available and/or not allowed. The current documentation makes it sound like everything supported by the section schema is also supported in app extensions, but that doesn’t seem to be the case.
In my case, figured out a workaround. I needed repeating blocks for specific products to then manipulate. I put said products in a collection which I then looped through by creating a block collection setting and referencing it (see Settings in the documentation linked above) to dynamically create the blocks based on the number of products in the collection. For the settings of each dynamically created block, I captured an index at the beginning of the loop and then referenced that in the products list returned by the collection setting, like so:
I passed things to the JS file as needed via HTML data attributes.
I know everyone’s use case is different, but hopefully this may help you!
Theme extension App blocks cannot take the blocks or presets schema. I believe that is in Sections only; app blocks cannot take everything sections can and are different things entirely. App blocks can only take the schema as noted in the documentation that I shared above.
You will not be able to create blocks and/or repeating blocks the way you showed in your shared schema within an theme extension app block.
Using invalid Schema? No. You’ll have to iterate through something else, like a Collection.
Theme app extension blocks aren’t intended to act like Sections from what I can gather. They are much more limited, and really meant for simple blocks (like star ratings) that the user can drag and drop into the Theme. In fact there are quite a few limitations placed on them. For more complex App blocks you have to get creative.