@@ -31,27 +31,19 @@ import androidx.compose.ui.tooling.preview.Preview
3131import androidx.compose.ui.unit.dp
3232import androidx.compose.ui.unit.em
3333import androidx.compose.ui.unit.sp
34+ import com.anytypeio.anytype.core_models.membership.TierId
3435import com.anytypeio.anytype.core_ui.R
3536import com.anytypeio.anytype.core_ui.foundation.noRippleThrottledClickable
3637import com.anytypeio.anytype.core_ui.views.ButtonPrimary
3738import com.anytypeio.anytype.core_ui.views.ButtonSize
3839import com.anytypeio.anytype.core_ui.views.Caption1Regular
3940import com.anytypeio.anytype.core_ui.views.Relations3
4041import com.anytypeio.anytype.core_ui.views.fontInterSemibold
41- import com.anytypeio.anytype.core_models.membership.MembershipConstants.BUILDER_ID
42- import com.anytypeio.anytype.core_models.membership.MembershipConstants.CO_CREATOR_ID
43- import com.anytypeio.anytype.core_models.membership.MembershipConstants.FREE_ID
44- import com.anytypeio.anytype.core_models.membership.MembershipConstants.NEW_EXPLORER_ID
45- import com.anytypeio.anytype.core_models.membership.MembershipConstants.OLD_EXPLORER_ID
46- import com.anytypeio.anytype.core_models.membership.MembershipConstants.STARTER_ID
47- import com.anytypeio.anytype.core_models.membership.MembershipConstants.PIONEER_ID
48- import com.anytypeio.anytype.core_models.membership.MembershipConstants.PRO_MONTHLY_ID
49- import com.anytypeio.anytype.payments.models.TierPreview
5042import com.anytypeio.anytype.payments.models.Tier
5143import com.anytypeio.anytype.payments.models.TierConditionInfo
5244import com.anytypeio.anytype.payments.models.TierPeriod
45+ import com.anytypeio.anytype.payments.models.TierPreview
5346import com.anytypeio.anytype.presentation.editor.cover.CoverColor
54- import com.anytypeio.anytype.core_models.membership.TierId
5547
5648@Composable
5749fun TierPreviewView (
@@ -146,117 +138,47 @@ fun TierPreviewView(
146138 }
147139}
148140
149- @Composable
150- fun mapTierToResources (tier : Tier ): TierResources {
151- return when (tier.id.value) {
152- BUILDER_ID -> TierResources (
153- mediumIcon = R .drawable.logo_builder_96,
154- smallIcon = R .drawable.logo_builder_64,
155- colors = toValue(tier.color),
156- features = tier.features,
141+ /* *
142+ * Maps color code to icon resources (smallIcon, mediumIcon)
143+ */
144+ private fun getIconsForColor (colorCode : String ): Pair <Int , Int > {
145+ return when (colorCode) {
146+ CoverColor .RED .code -> Pair (R .drawable.logo_co_creator_64, R .drawable.logo_co_creator_96)
147+ CoverColor .BLUE .code -> Pair (
148+ R .drawable.logo_new_explorer_64,
149+ R .drawable.logo_new_explorer_96
157150 )
158151
159- CO_CREATOR_ID -> TierResources (
160- mediumIcon = R .drawable.logo_co_creator_96,
161- smallIcon = R .drawable.logo_co_creator_64,
162- colors = toValue(tier.color),
163- features = tier.features,
164- )
165- OLD_EXPLORER_ID -> TierResources (
166- mediumIcon = R .drawable.logo_explorer_96,
167- smallIcon = R .drawable.logo_explorer_64,
168- colors = toValue(tier.color),
169- features = tier.features,
170- )
171- STARTER_ID -> TierResources (
172- mediumIcon = R .drawable.logo_explorer_96,
173- smallIcon = R .drawable.logo_explorer_64,
174- colors = toValue(tier.color),
175- features = tier.features,
176- )
177- PIONEER_ID -> TierResources (
178- mediumIcon = R .drawable.logo_custom_64,
179- smallIcon = R .drawable.logo_custom_64,
180- colors = toValue(tier.color),
181- features = tier.features,
182- )
183- NEW_EXPLORER_ID -> TierResources (
184- mediumIcon = R .drawable.logo_new_explorer_96,
185- smallIcon = R .drawable.logo_new_explorer_64,
186- colors = toValue(tier.color),
187- features = tier.features,
188- )
189- FREE_ID -> TierResources (
190- mediumIcon = R .drawable.logo_explorer_96,
191- smallIcon = R .drawable.logo_explorer_64,
192- colors = toValue(tier.color),
193- features = tier.features,
194- )
195- PRO_MONTHLY_ID -> TierResources (
196- mediumIcon = R .drawable.logo_co_creator_96,
197- smallIcon = R .drawable.logo_co_creator_64,
198- colors = toValue(tier.color),
199- features = tier.features,
200- )
201- else -> TierResources (
202- smallIcon = R .drawable.logo_custom_64,
203- mediumIcon = R .drawable.logo_custom_64,
204- colors = toValue(tier.color),
205- features = tier.features,
152+ CoverColor .GREEN .code -> Pair (R .drawable.logo_explorer_64, R .drawable.logo_explorer_96)
153+ CoverColor .PURPLE .code -> Pair (R .drawable.logo_custom_64, R .drawable.logo_custom_64)
154+ CoverColor .ICE .code -> Pair (
155+ R .drawable.logo_new_explorer_64,
156+ R .drawable.logo_new_explorer_96
206157 )
158+
159+ else -> Pair (R .drawable.logo_custom_64, R .drawable.logo_custom_64)
207160 }
208161}
209162
210163@Composable
211- fun mapTierPreviewToResources (tier : TierPreview ): TierResources {
212- return when (tier.id.value) {
213- BUILDER_ID -> TierResources (
214- mediumIcon = R .drawable.logo_builder_96,
215- smallIcon = R .drawable.logo_builder_64,
216- colors = toValue(tier.color)
217- )
164+ fun mapTierToResources (tier : Tier ): TierResources {
165+ val (smallIcon, mediumIcon) = getIconsForColor(tier.color)
166+ return TierResources (
167+ mediumIcon = mediumIcon,
168+ smallIcon = smallIcon,
169+ colors = toValue(tier.color),
170+ features = tier.features,
171+ )
172+ }
218173
219- CO_CREATOR_ID -> TierResources (
220- mediumIcon = R .drawable.logo_co_creator_96,
221- smallIcon = R .drawable.logo_co_creator_64,
222- colors = toValue(tier.color)
223- )
224- OLD_EXPLORER_ID -> TierResources (
225- mediumIcon = R .drawable.logo_explorer_96,
226- smallIcon = R .drawable.logo_explorer_64,
227- colors = toValue(tier.color)
228- )
229- STARTER_ID -> TierResources (
230- mediumIcon = R .drawable.logo_explorer_96,
231- smallIcon = R .drawable.logo_explorer_64,
232- colors = toValue(tier.color)
233- )
234- PIONEER_ID -> TierResources (
235- mediumIcon = R .drawable.logo_custom_64,
236- smallIcon = R .drawable.logo_custom_64,
237- colors = toValue(tier.color)
238- )
239- NEW_EXPLORER_ID -> TierResources (
240- mediumIcon = R .drawable.logo_new_explorer_96,
241- smallIcon = R .drawable.logo_new_explorer_64,
242- colors = toValue(tier.color)
243- )
244- FREE_ID -> TierResources (
245- mediumIcon = R .drawable.logo_explorer_96,
246- smallIcon = R .drawable.logo_explorer_64,
247- colors = toValue(tier.color),
248- )
249- PRO_MONTHLY_ID -> TierResources (
250- mediumIcon = R .drawable.logo_co_creator_96,
251- smallIcon = R .drawable.logo_co_creator_64,
252- colors = toValue(tier.color),
253- )
254- else -> TierResources (
255- smallIcon = R .drawable.logo_custom_64,
256- mediumIcon = R .drawable.logo_custom_64,
257- colors = toValue(tier.color)
258- )
259- }
174+ @Composable
175+ fun mapTierPreviewToResources (tier : TierPreview ): TierResources {
176+ val (smallIcon, mediumIcon) = getIconsForColor(tier.color)
177+ return TierResources (
178+ mediumIcon = mediumIcon,
179+ smallIcon = smallIcon,
180+ colors = toValue(tier.color),
181+ )
260182}
261183
262184@Composable
@@ -314,7 +236,7 @@ data class TierColors(
314236fun TierPreviewViewPreview () {
315237 TierPreviewView (
316238 tier = TierPreview (
317- id = TierId (PRO_MONTHLY_ID ),
239+ id = TierId (221 ),
318240 title = " Pro (monthly)" ,
319241 subtitle = " For those who want to build and create" ,
320242 conditionInfo = TierConditionInfo .Visible .Price (" 99.99" , TierPeriod .Year (1 )),
0 commit comments