Add new Create Designs Service
About
At time of writing, Design Management only has a SaveDesignsService that is responsible for both creating and updating existing designs. A new version of a design currently must have the same filename as the previous version, otherwise, we create a new design instead of a new version of the design.
This has led to multiple pain points #36869 (closed) and #35868 (comment 261379566) and #39452 (comment 294328398) and #202634 (comment 309697535).
Instead, we want to have two services, one for create, and one for update. This work later will free us up from considering the design filename as the ID when updating designs.
This issue represents the work to add a service to handle the creation of designs.
Proposal
A new DesignManagement::CreateDesignsService that takes design files and creates new Design records. It would error (perhaps error and continue) if any of the design file names already exist.
Note that the service should be limited to 10 designs at a time, the same limitation as what the existing DesignManagement::SaveDesignsService currently has at time of writing.
The success response would contain:
-
designs(all designs successfully created) version