- Web Development
Flexible Package Released Today
Today we released our internally built "Flexible Links" data type to the public. It is a control we use to control sets of links and fills a similar niche to umbraco's build in Multi Url Picker. Why didn't we just that control one might ask? Well, to explain that, I'll go on a short trip down memory lane.
We originally used umbraco's Related Links data type in our early umbraco 7 builds, which is the predecessor to the current Multi Url Picker control. It worked great at the time, but we eventually ran into a problem. We needed to be able to create modal/popup links from this control. While technically possible by using content nodes to control the modals, it didn't make for the best user experience, as users would have to drill down through the content tree every time they want to add a modal. And so the first iteration of Flexible Links was born. Since then, we have used this data type on every website we have built, gradually expanding on it's capabilities.
At first it was fixing oversights in the original implementation. The first version didn't have an option to select media, as it was used mostly for controlling navigation at first, which usually doesn't link to media for example. Later on, umbraco 8 came out and introduced it's infinite editing capabilities, so we moved type selection into another panel and added controls to access data about the selected content/media when available. Later on, we encountered a need for new types of links and so we generalized the data type so that new types of links could be added via an umbraco collection instead of forcing us to tinker with the angular bits. And last of all, we updated all of the back end code to make the data type compatible with umbraco 10 and that is the version released today. Below you can see what the first version of this data type looked like versus what it looks like now.