As a package creator, I want to structure my contents in a way that makes sense to me. At the same time, the packate consumer would like some consistency in how new code is added to their project.
Instead of mapping by file extension, we can create "virtual" folders that will map to physical folders on install.
For example, in the contents node, the package creator will include files like:
The consumer would then define where $scripts, $css, $images, etc. are located in their project, and NuGet will install the content files appropriately.
Since the package creator won't know where the files are physically located, they should only reference files relative to their package folder. This is why I showed image.jpg in the $css folder. If you reference an image in your stylesheet it will be relative
to the css file.
Anyway, I think having these "virtual" folders will give the desired flexibility to both producers and consumers.
What do you think?