Generated code raises KeyError in core_components.ex for: 'item' and 'col'

The KeyErrors are telling you that :item and :col are not found in the assigns map passed to the function components (in this case the table/1 and list/1 components in core_components.ex). You can tell it’s an assigns map because it has keys like __changed__ which are used by LiveView to track changes. Assigns are used like @item in your HEEx templates but they are converted into map operations by the compiler.

In this case, the assigns in question are actually slots which are passed in as assigns by LiveView. The problem is that the @item and @col assigns haven’t been set (you can see in the error message that they are missing from the assigns map), which will happen if you haven’t included any <:col></:col> or <:item></:item> slots in your tables and lists. These are required slots, so they don’t get a default value - you have to provide them.

Missing required slots also emit a compile-time warning telling you that they’re missing - if you check your console output after compilation (or you have inline warnings in your editor) then you should see them.