Preheat oven to 350ºF. Prepare 18 muffin tins with muffin liners or spray 48 mini muffin tins with non-stick cooking spray (or do a combination of both!)
Press the excess juice out of pineapple in a fine sieve. Place the pineapple in a small bowl and stir in carrots, raisins, nuts and coconut.
In another large bowl, whisk together flours, baking soda, baking powder, nutmeg, ginger, cinnamon, and salt. Add in the brown sugar, yogurt, coconut oil, eggs and vanilla and beat on low speed in an electric mixer until well combined.
Add the carrot-raisin mixture to the flour mixture, and fold until well combined.
Fill the muffin tins no more than 2/3 of the way full. Bake the large cupcakes for 20-25 minutes, and the mini cupcakes for about 8-12 minutes, or until a skewer comes out clean. Let cool in the pan for 10 minutes, then remove and transfer to the fridge to completely chill before icing.
While the cupcakes cool completely, put the cream cheese and coconut oil in a medium size bowl and beat until very soft. Add in the sugar and continue to beat until well incorporated and smooth. Add the yogurt and vanilla extract and beat until fluffy and light.
To decorate, transfer the icing to a piping bag if desired and pipe little florets onto each cupcake. Top with toasted coconut and walnuts, if desired. Store in the fridge until consumed.