There is a script:
on craft of air:
cancel event
and the fact is that the crafting event is canceled filled_map
Also, due to the fact that the SCRIPT cannot determine what the map has been crafted , when:
set {_nbt::*} to nbt of event-item
send "NBT tags of the item you are holding:"
writes that there is no tag TYPE, but in fact there is NBT: "map:1"