- Heat oil in a large saucepan set over medium-high heat. Add onion and shallots and cook until beginning to brown, about 5 minutes.
- Stir in cranberries, apples, brown sugar, figs, and vinegar. Cook, stirring constantly, until mixture begins to boil and moisture is released, about 5 minutes.
- Reduce heat to low, cover, and simmer for 20 minutes, occasionally stirring, until apples are tender. Cool to room temperature before serving.