@momo-kits/native-kits 0.167.1-beta.4-debug → 0.167.1-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/package.json +1 -1
  2. package/build.gradle.kts +0 -11
  3. package/compose/build.gradle.kts +0 -190
  4. package/compose/build.gradle.kts.backup +0 -190
  5. package/compose/compose.podspec +0 -47
  6. package/compose/src/androidMain/kotlin/vn/momo/kits/const/HostFont.android.kt +0 -19
  7. package/compose/src/androidMain/kotlin/vn/momo/kits/navigation/ScrollToTop.android.kt +0 -6
  8. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/BackGesture.android.kt +0 -12
  9. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/OsFontScale.android.kt +0 -7
  10. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/Platform.android.kt +0 -151
  11. package/compose/src/commonMain/kotlin/vn/momo/kits/application/AnimationSearchInput.kt +0 -52
  12. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Context.kt +0 -124
  13. package/compose/src/commonMain/kotlin/vn/momo/kits/application/FloatingButton.kt +0 -183
  14. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Header.kt +0 -207
  15. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderAnimated.kt +0 -39
  16. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderBackground.kt +0 -86
  17. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderDefault.kt +0 -76
  18. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderExtended.kt +0 -76
  19. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderRight.kt +0 -293
  20. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderTitle.kt +0 -33
  21. package/compose/src/commonMain/kotlin/vn/momo/kits/application/LiteScreen.kt +0 -831
  22. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Localize.kt +0 -269
  23. package/compose/src/commonMain/kotlin/vn/momo/kits/application/NavigationContainer.kt +0 -110
  24. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Screen.kt +0 -378
  25. package/compose/src/commonMain/kotlin/vn/momo/kits/application/WidgetContainer.kt +0 -56
  26. package/compose/src/commonMain/kotlin/vn/momo/kits/application/useHeaderSearchAnimation.kt +0 -69
  27. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Avatar.kt +0 -157
  28. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Badge.kt +0 -82
  29. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeDot.kt +0 -32
  30. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeRibbon.kt +0 -338
  31. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BaselineView.kt +0 -175
  32. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Button.kt +0 -356
  33. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Carousel.kt +0 -113
  34. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CheckBox.kt +0 -89
  35. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Chip.kt +0 -128
  36. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Collapse.kt +0 -209
  37. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CupertinoOverscroll.kt +0 -542
  38. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Divider.kt +0 -49
  39. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Icon.kt +0 -76
  40. package/compose/src/commonMain/kotlin/vn/momo/kits/components/IconButton.kt +0 -125
  41. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Image.kt +0 -231
  42. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Information.kt +0 -189
  43. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Input.kt +0 -475
  44. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputDropDown.kt +0 -114
  45. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputMoney.kt +0 -266
  46. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputOTP.kt +0 -240
  47. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputPhoneNumber.kt +0 -223
  48. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputSearch.kt +0 -264
  49. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputTextArea.kt +0 -185
  50. package/compose/src/commonMain/kotlin/vn/momo/kits/components/LazyColumnWithBouncing.kt +0 -343
  51. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Loader.kt +0 -108
  52. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationDot.kt +0 -56
  53. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationNumber.kt +0 -41
  54. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationScroll.kt +0 -84
  55. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationWhiteDot.kt +0 -40
  56. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupNotify.kt +0 -328
  57. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupPromotion.kt +0 -97
  58. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ProgressInfo.kt +0 -310
  59. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Radio.kt +0 -59
  60. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Rating.kt +0 -87
  61. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ScaleSizeScope.kt +0 -21
  62. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Skeleton.kt +0 -90
  63. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Slider.kt +0 -323
  64. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Stepper.kt +0 -220
  65. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Steps.kt +0 -473
  66. package/compose/src/commonMain/kotlin/vn/momo/kits/components/SuggestAction.kt +0 -122
  67. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Swipe.kt +0 -199
  68. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Switch.kt +0 -91
  69. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TabView.kt +0 -552
  70. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tag.kt +0 -88
  71. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Text.kt +0 -125
  72. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Title.kt +0 -207
  73. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tooltip.kt +0 -498
  74. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TrustBanner.kt +0 -176
  75. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Uploader.kt +0 -182
  76. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePicker.kt +0 -193
  77. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerTypes.kt +0 -29
  78. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerUtils.kt +0 -234
  79. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/WheelPicker.kt +0 -188
  80. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Colors.kt +0 -325
  81. package/compose/src/commonMain/kotlin/vn/momo/kits/const/HostFont.kt +0 -16
  82. package/compose/src/commonMain/kotlin/vn/momo/kits/const/KitDesignSystem.kt +0 -18
  83. package/compose/src/commonMain/kotlin/vn/momo/kits/const/KitFontScale.kt +0 -22
  84. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Radius.kt +0 -12
  85. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Spacing.kt +0 -16
  86. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Theme.kt +0 -188
  87. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Typography.kt +0 -296
  88. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Card.kt +0 -52
  89. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Item.kt +0 -38
  90. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Section.kt +0 -39
  91. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/AutomationId.kt +0 -52
  92. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Clickable.kt +0 -66
  93. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Conditional.kt +0 -11
  94. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/DeprecatedModifier.kt +0 -104
  95. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Shadow.kt +0 -48
  96. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Size.kt +0 -51
  97. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/BottomSheet.kt +0 -299
  98. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/HostBackGestureBridge.kt +0 -58
  99. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ModalScreen.kt +0 -129
  100. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigation.kt +0 -106
  101. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/NavigationContainer.kt +0 -201
  102. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigator.kt +0 -393
  103. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ScrollToTop.kt +0 -8
  104. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackScreen.kt +0 -595
  105. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackTransition.kt +0 -148
  106. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/SwipeBackHaptic.kt +0 -35
  107. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTab.kt +0 -175
  108. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTabBar.kt +0 -225
  109. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/CurvedContainer.kt +0 -86
  110. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/FloatingButton.kt +0 -169
  111. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/Header.kt +0 -358
  112. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderBackground.kt +0 -83
  113. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderJourney.kt +0 -106
  114. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderLocation.kt +0 -75
  115. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderRight.kt +0 -309
  116. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderTitle.kt +0 -37
  117. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderUser.kt +0 -364
  118. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/SnackBar.kt +0 -132
  119. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/tracking/ScreenTracker.kt +0 -127
  120. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/BackGesture.kt +0 -12
  121. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/ComposeLottieAnimation.kt +0 -91
  122. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/OsFontScale.kt +0 -9
  123. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/Platform.kt +0 -71
  124. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Icons.kt +0 -1329
  125. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Resources.kt +0 -55
  126. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Tracking.kt +0 -15
  127. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Utils.kt +0 -105
  128. package/compose/src/iosMain/kotlin/vn/momo/kits/const/HostFont.ios.kt +0 -40
  129. package/compose/src/iosMain/kotlin/vn/momo/kits/navigation/HostBackGesture.ios.kt +0 -45
  130. package/compose/src/iosMain/kotlin/vn/momo/kits/navigation/ScrollToTop.ios.kt +0 -32
  131. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/BackGesture.ios.kt +0 -38
  132. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/OsFontScale.ios.kt +0 -66
  133. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/Platform.ios.kt +0 -213
  134. package/gradle/libs.versions.toml +0 -69
  135. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  136. package/gradle/wrapper/gradle-wrapper.properties +0 -8
  137. package/gradle.properties +0 -26
  138. package/gradlew +0 -252
  139. package/gradlew.bat +0 -94
  140. package/ios-demo/README.md +0 -120
  141. package/local.properties +0 -8
  142. package/settings.gradle.kts +0 -64
@@ -1,188 +0,0 @@
1
- package vn.momo.kits.components.datetimepicker
2
-
3
- import androidx.compose.foundation.background
4
- import androidx.compose.foundation.border
5
- import androidx.compose.foundation.gestures.animateScrollBy
6
- import androidx.compose.foundation.layout.Box
7
- import androidx.compose.foundation.layout.fillMaxWidth
8
- import androidx.compose.foundation.layout.height
9
- import androidx.compose.foundation.lazy.LazyColumn
10
- import androidx.compose.foundation.lazy.LazyListState
11
- import androidx.compose.foundation.lazy.rememberLazyListState
12
- import androidx.compose.foundation.shape.RoundedCornerShape
13
- import androidx.compose.runtime.*
14
- import androidx.compose.ui.Alignment
15
- import androidx.compose.ui.Modifier
16
- import androidx.compose.ui.draw.alpha
17
- import androidx.compose.ui.graphics.graphicsLayer
18
- import androidx.compose.ui.platform.LocalDensity
19
- import androidx.compose.ui.unit.Dp
20
- import androidx.compose.ui.unit.dp
21
- import androidx.compose.ui.zIndex
22
- import kotlinx.coroutines.FlowPreview
23
- import kotlinx.coroutines.delay
24
- import kotlinx.coroutines.flow.collect
25
- import kotlinx.coroutines.flow.debounce
26
- import kotlinx.coroutines.flow.distinctUntilChanged
27
- import kotlinx.coroutines.flow.onEach
28
- import vn.momo.kits.components.Text
29
- import vn.momo.kits.const.AppTheme
30
- import vn.momo.kits.const.Colors
31
- import vn.momo.kits.const.Radius
32
- import vn.momo.kits.const.Typography
33
- import kotlin.math.abs
34
- import kotlin.time.Duration.Companion.milliseconds
35
-
36
- private val wheelItemHeight = 42.dp
37
- private val wheelPickerBorderWidth = 1.dp
38
-
39
- @OptIn(FlowPreview::class)
40
- @Composable
41
- internal fun WheelPicker(
42
- name: String,
43
- data: List<String>,
44
- selectedData: String,
45
- onChange: (String, String) -> Unit,
46
- modifier: Modifier = Modifier
47
- ) {
48
- val listState = rememberLazyListState()
49
- val itemHeightPx = with(LocalDensity.current) { wheelItemHeight.toPx() }
50
-
51
- val paddedData = remember(data) {
52
- listOf("", "") + data + listOf("", "")
53
- }
54
-
55
- val initialIndex = remember(selectedData, paddedData) {
56
- paddedData.indexOf(selectedData).coerceAtLeast(2)
57
- }
58
-
59
- LaunchedEffect(initialIndex) {
60
- listState.scrollToItem(initialIndex - 2)
61
- }
62
-
63
- var selectedIndex by remember { mutableStateOf(0) }
64
-
65
- LaunchedEffect(paddedData) {
66
- snapshotFlow { selectedIndex }
67
- .distinctUntilChanged()
68
- .debounce(50.milliseconds)
69
- .onEach {
70
- val value = paddedData.getOrNull(it)
71
- if (!value.isNullOrEmpty()) {
72
- onChange(name, value)
73
- }
74
- }
75
- .collect()
76
- }
77
-
78
- LaunchedEffect(paddedData) {
79
- snapshotFlow { listState.isScrollInProgress }
80
- .onEach {
81
- if (it) return@onEach
82
- val firstItem = listState.layoutInfo.visibleItemsInfo.firstOrNull() ?: return@onEach
83
- val firstItemIdx = firstItem.index
84
- val firstItemOffset = firstItem.offset
85
- if (firstItemOffset == 0) {
86
- selectedIndex = firstItemIdx + 2
87
- return@onEach
88
- }
89
- val isScrollUp = abs(firstItemOffset) > itemHeightPx / 2
90
- val offset = if (isScrollUp) {
91
- itemHeightPx - abs(firstItemOffset)
92
- } else {
93
- -abs(firstItemOffset)
94
- }
95
- delay(50.milliseconds)
96
- listState.animateScrollBy(offset.toFloat())
97
- val centeredIndex = firstItemIdx + (if (isScrollUp) 1 else 0) + 2
98
- if (centeredIndex in 2 until paddedData.size - 2) {
99
- selectedIndex = centeredIndex
100
- }
101
- }
102
- .collect()
103
- }
104
-
105
- Box(
106
- modifier = modifier
107
- .border(
108
- width = wheelPickerBorderWidth,
109
- color = AppTheme.current.colors.border.default,
110
- shape = RoundedCornerShape(Radius.S)
111
- )
112
- .background(
113
- color = AppTheme.current.colors.background.surface,
114
- )
115
- ) {
116
- LazyColumn(
117
- state = listState,
118
- modifier = Modifier
119
- .fillMaxWidth()
120
- ) {
121
- items(paddedData.size) { index ->
122
- WheelPickerItem(
123
- text = paddedData[index],
124
- isSelected = index == selectedIndex,
125
- index = index,
126
- listState = listState,
127
- itemHeight = wheelItemHeight
128
- )
129
- }
130
- }
131
-
132
- Box(
133
- modifier = Modifier
134
- .fillMaxWidth()
135
- .height(wheelItemHeight)
136
- .background(Colors.blue_10)
137
- .align(Alignment.Center)
138
- .alpha(0.2f)
139
- .zIndex(-2f)
140
- )
141
- }
142
- }
143
-
144
- @Composable
145
- internal fun WheelPickerItem(
146
- text: String,
147
- isSelected: Boolean,
148
- index: Int,
149
- listState: LazyListState,
150
- itemHeight: Dp
151
- ) {
152
- Box(
153
- modifier = Modifier
154
- .fillMaxWidth()
155
- .height(itemHeight)
156
- .graphicsLayer {
157
- val firstVisibleIndex = listState.firstVisibleItemIndex
158
- val visibleItemOffset = listState.firstVisibleItemScrollOffset
159
-
160
- val viewportHeight = 5 * itemHeight.value
161
- val itemHeightValue = itemHeight.value
162
-
163
- val absoluteOffset =
164
- (index - firstVisibleIndex) * itemHeightValue - (visibleItemOffset / itemHeightValue)
165
- val relativePosition = absoluteOffset / viewportHeight
166
-
167
- val distance = abs(2 - relativePosition)
168
-
169
- alpha = when {
170
- distance <= 1 -> 1f
171
- distance <= 2 -> 0.8f
172
- distance <= 3 -> 0.4f
173
- else -> 0.4f
174
- }
175
- },
176
- contentAlignment = Alignment.Center
177
- ) {
178
- Text(
179
- text = text,
180
- style = Typography.actionSBold,
181
- modifier = Modifier.graphicsLayer {
182
- val scale = if (isSelected) 1f else 0.87f
183
- scaleX = scale
184
- scaleY = scale
185
- }
186
- )
187
- }
188
- }
@@ -1,325 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.ui.graphics.Color
4
-
5
- object Colors {
6
- val black_01 = Color(0xFFFFFFFF)
7
- val black_02 = Color(0xFFF9F9F9)
8
- val black_03 = Color(0xFFF0F0F0)
9
- val black_04 = Color(0xFFE8E8E8)
10
- val black_05 = Color(0xFFE5E5E5)
11
- val black_06 = Color(0xFFD8D8D8)
12
- val black_07 = Color(0xFFCCCCCC)
13
- val black_08 = Color(0xFFC6C6C6)
14
- val black_09 = Color(0xFFB9B9B9)
15
- val black_10 = Color(0xFFA0A0A0)
16
- val black_11 = Color(0xFF878787)
17
- val black_12 = Color(0xFF727272)
18
- val black_13 = Color(0xFF646464)
19
- val black_14 = Color(0xFF565656)
20
- val black_15 = Color(0xFF484848)
21
- val black_16 = Color(0xFF404040)
22
- val black_17 = Color(0xFF303233)
23
- val black_18 = Color(0xFF242424)
24
- val black_19 = Color(0xFF18191A)
25
- val black_20 = Color(0xFF000000)
26
- val pink_01 = Color(0xFFBC2678)
27
- val pink_02 = Color(0xFFD42A87)
28
- val pink_03 = Color(0xFFEB2F96)
29
- val pink_04 = Color(0xFFED43A0)
30
- val pink_05 = Color(0xFFEF59AB)
31
- val pink_06 = Color(0xFFF382C0)
32
- val pink_07 = Color(0xFFF7ACD5)
33
- val pink_08 = Color(0xFFFBD5EA)
34
- val pink_09 = Color(0xFFFDEAF4)
35
- val pink_10 = Color(0xFFFEF4FA)
36
- val pink_11 = Color(0xFFFEF8FC)
37
- val pink_MoMo_Branding = Color(0xFFA50064)
38
- val violet_01 = Color(0xFF7822C0)
39
- val violet_02 = Color(0xFF8726D8)
40
- val violet_03 = Color(0xFF962AF0)
41
- val violet_04 = Color(0xFFA03FF1)
42
- val violet_05 = Color(0xFFAB55F3)
43
- val violet_06 = Color(0xFFC07FF6)
44
- val violet_07 = Color(0xFFD5AAF9)
45
- val violet_08 = Color(0xFFEAD4FC)
46
- val violet_09 = Color(0xFFF4E9FD)
47
- val violet_10 = Color(0xFFFAF4FE)
48
- val violet_11 = Color(0xFFFCF8FE)
49
- val violet_11_stroke = Color(0xFFDFE1E5)
50
- val indigo_01 = Color(0xFF3E3CCC)
51
- val indigo_02 = Color(0xFF4644E6)
52
- val indigo_03 = Color(0xFF4E4BFF)
53
- val indigo_04 = Color(0xFF5F5DFF)
54
- val indigo_05 = Color(0xFF716FFF)
55
- val indigo_06 = Color(0xFF9593FF)
56
- val indigo_07 = Color(0xFFB8B7FF)
57
- val indigo_08 = Color(0xFFDCDBFF)
58
- val indigo_09 = Color(0xFFEDEDFF)
59
- val indigo_10 = Color(0xFFF6F6FF)
60
- val indigo_11 = Color(0xFFF9F9FF)
61
- val blue_01 = Color(0xFF0062CC)
62
- val blue_02 = Color(0xFF006EE6)
63
- val blue_03 = Color(0xFF007AFF)
64
- val blue_04 = Color(0xFF1987FF)
65
- val blue_05 = Color(0xFF3395FF)
66
- val blue_06 = Color(0xFF66AFFF)
67
- val blue_07 = Color(0xFF99CAFF)
68
- val blue_08 = Color(0xFFCCE4FF)
69
- val blue_09 = Color(0xFFE5F1FF)
70
- val blue_10 = Color(0xFFF2F8FF)
71
- val blue_11 = Color(0xFFF7FBFF)
72
- val mint_01 = Color(0xFF0F9B9B)
73
- val mint_02 = Color(0xFF11AFAF)
74
- val mint_03 = Color(0xFF13C2C2)
75
- val mint_04 = Color(0xFF2AC8C8)
76
- val mint_05 = Color(0xFF42CECE)
77
- val mint_06 = Color(0xFF71DADA)
78
- val mint_07 = Color(0xFFA1E7E7)
79
- val mint_08 = Color(0xFFD0F3F3)
80
- val mint_09 = Color(0xFFE7F8F8)
81
- val mint_10 = Color(0xFFF3FCFC)
82
- val mint_11 = Color(0xFFF8FDFD)
83
- val green_01 = Color(0xFF2A9F47)
84
- val green_02 = Color(0xFF2FB350)
85
- val green_03 = Color(0xFF34C759)
86
- val green_04 = Color(0xFF48CC69)
87
- val green_05 = Color(0xFF5DD27A)
88
- val green_06 = Color(0xFF85DD9B)
89
- val green_07 = Color(0xFFAEE9BD)
90
- val green_08 = Color(0xFFD6F4DE)
91
- val green_09 = Color(0xFFEAF9EE)
92
- val green_10 = Color(0xFFF5FCF6)
93
- val green_11 = Color(0xFFF9FDFA)
94
- val lime_01 = Color(0xFF80AE0E)
95
- val lime_02 = Color(0xFF90C30F)
96
- val lime_03 = Color(0xFFA0D911)
97
- val lime_04 = Color(0xFFA9DC28)
98
- val lime_05 = Color(0xFFB3E141)
99
- val lime_06 = Color(0xFFC6E870)
100
- val lime_07 = Color(0xFFD9F0A0)
101
- val lime_08 = Color(0xFFECF7CF)
102
- val lime_09 = Color(0xFFF5FBE7)
103
- val lime_10 = Color(0xFFFAFDF3)
104
- val lime_11 = Color(0xFFFCFEF8)
105
- val yellow_01 = Color(0xFFCCA300)
106
- val yellow_02 = Color(0xFFE6B800)
107
- val yellow_03 = Color(0xFFFFCC00)
108
- val yellow_04 = Color(0xFFFFD119)
109
- val yellow_05 = Color(0xFFFFD633)
110
- val yellow_06 = Color(0xFFFFE066)
111
- val yellow_07 = Color(0xFFFFEB99)
112
- val yellow_08 = Color(0xFFFFF5CC)
113
- val yellow_09 = Color(0xFFFFF9E5)
114
- val yellow_10 = Color(0xFFFFFCF2)
115
- val yellow_11 = Color(0xFFFFFDF7)
116
- val gold_01 = Color(0xFFC87012)
117
- val gold_02 = Color(0xFFE17E14)
118
- val gold_03 = Color(0xFFFA8C16)
119
- val gold_04 = Color(0xFFFA972D)
120
- val gold_05 = Color(0xFFFBA345)
121
- val gold_06 = Color(0xFFFCBA73)
122
- val gold_07 = Color(0xFFFDD1A2)
123
- val gold_08 = Color(0xFFFEE8D0)
124
- val gold_09 = Color(0xFFFEF3E7)
125
- val gold_10 = Color(0xFFFFF9F3)
126
- val gold_11 = Color(0xFFFEFBF8)
127
- val orange_01 = Color(0xFFC84316)
128
- val orange_02 = Color(0xFFE14C19)
129
- val orange_03 = Color(0xFFFA541C)
130
- val orange_04 = Color(0xFFFA6532)
131
- val orange_05 = Color(0xFFFB7649)
132
- val orange_06 = Color(0xFFFC9877)
133
- val orange_07 = Color(0xFFFDBBA4)
134
- val orange_08 = Color(0xFFFEDDD2)
135
- val orange_09 = Color(0xFFFEEDe8)
136
- val orange_10 = Color(0xFFFFF6F3)
137
- val orange_11 = Color(0xFFFEFAF8)
138
- val red_01 = Color(0xFFC41B24)
139
- val red_02 = Color(0xFFDD1F29)
140
- val red_03 = Color(0xFFF5222D)
141
- val red_04 = Color(0xFFF63842)
142
- val red_05 = Color(0xFFF74E57)
143
- val red_06 = Color(0xFFF97A81)
144
- val red_07 = Color(0xFFFBA7AB)
145
- val red_08 = Color(0xFFFDD3D5)
146
- val red_09 = Color(0xFFFEe8EA)
147
- val red_10 = Color(0xFFFEF4F4)
148
- val red_11 = Color(0xFFFEF8F8)
149
-
150
- // Translucent overlays, ported from the React kit's Consts (the reference
151
- // palette). React spells them `#RRGGBBAA`; Compose's Color takes `0xAARRGGBB`.
152
- val opacity_black_20 = Color(0x33000000)
153
- val opacity_black_40 = Color(0x66000000)
154
- val opacity_black_60 = Color(0x99000000)
155
- val opacity_black_80 = Color(0xCC000000)
156
- val opacity_white_20 = Color(0x33FFFFFF)
157
- val opacity_white_40 = Color(0x66FFFFFF)
158
- val opacity_white_60 = Color(0x99FFFFFF)
159
- val opacity_white_80 = Color(0xCCFFFFFF)
160
-
161
- val colorList: Map<String, Color> = mapOf(
162
- "black_01" to black_01,
163
- "black_02" to black_02,
164
- "black_03" to black_03,
165
- "black_04" to black_04,
166
- "black_05" to black_05,
167
- "black_06" to black_06,
168
- "black_07" to black_07,
169
- "black_08" to black_08,
170
- "black_09" to black_09,
171
- "black_10" to black_10,
172
- "black_11" to black_11,
173
- "black_12" to black_12,
174
- "black_13" to black_13,
175
- "black_14" to black_14,
176
- "black_15" to black_15,
177
- "black_16" to black_16,
178
- "black_17" to black_17,
179
- "black_18" to black_18,
180
- "black_19" to black_19,
181
- "black_20" to black_20,
182
-
183
- "pink_01" to pink_01,
184
- "pink_02" to pink_02,
185
- "pink_03" to pink_03,
186
- "pink_04" to pink_04,
187
- "pink_05" to pink_05,
188
- "pink_06" to pink_06,
189
- "pink_07" to pink_07,
190
- "pink_08" to pink_08,
191
- "pink_09" to pink_09,
192
- "pink_10" to pink_10,
193
- "pink_11" to pink_11,
194
- "pink_MoMo_Branding" to pink_MoMo_Branding,
195
-
196
- "violet_01" to violet_01,
197
- "violet_02" to violet_02,
198
- "violet_03" to violet_03,
199
- "violet_04" to violet_04,
200
- "violet_05" to violet_05,
201
- "violet_06" to violet_06,
202
- "violet_07" to violet_07,
203
- "violet_08" to violet_08,
204
- "violet_09" to violet_09,
205
- "violet_10" to violet_10,
206
- "violet_11" to violet_11,
207
- "violet_11_stroke" to violet_11_stroke,
208
-
209
- "indigo_01" to indigo_01,
210
- "indigo_02" to indigo_02,
211
- "indigo_03" to indigo_03,
212
- "indigo_04" to indigo_04,
213
- "indigo_05" to indigo_05,
214
- "indigo_06" to indigo_06,
215
- "indigo_07" to indigo_07,
216
- "indigo_08" to indigo_08,
217
- "indigo_09" to indigo_09,
218
- "indigo_10" to indigo_10,
219
- "indigo_11" to indigo_11,
220
-
221
- "blue_01" to blue_01,
222
- "blue_02" to blue_02,
223
- "blue_03" to blue_03,
224
- "blue_04" to blue_04,
225
- "blue_05" to blue_05,
226
- "blue_06" to blue_06,
227
- "blue_07" to blue_07,
228
- "blue_08" to blue_08,
229
- "blue_09" to blue_09,
230
- "blue_10" to blue_10,
231
- "blue_11" to blue_11,
232
-
233
- "mint_01" to mint_01,
234
- "mint_02" to mint_02,
235
- "mint_03" to mint_03,
236
- "mint_04" to mint_04,
237
- "mint_05" to mint_05,
238
- "mint_06" to mint_06,
239
- "mint_07" to mint_07,
240
- "mint_08" to mint_08,
241
- "mint_09" to mint_09,
242
- "mint_10" to mint_10,
243
- "mint_11" to mint_11,
244
-
245
- "green_01" to green_01,
246
- "green_02" to green_02,
247
- "green_03" to green_03,
248
- "green_04" to green_04,
249
- "green_05" to green_05,
250
- "green_06" to green_06,
251
- "green_07" to green_07,
252
- "green_08" to green_08,
253
- "green_09" to green_09,
254
- "green_10" to green_10,
255
- "green_11" to green_11,
256
-
257
- "lime_01" to lime_01,
258
- "lime_02" to lime_02,
259
- "lime_03" to lime_03,
260
- "lime_04" to lime_04,
261
- "lime_05" to lime_05,
262
- "lime_06" to lime_06,
263
- "lime_07" to lime_07,
264
- "lime_08" to lime_08,
265
- "lime_09" to lime_09,
266
- "lime_10" to lime_10,
267
- "lime_11" to lime_11,
268
-
269
- "yellow_01" to yellow_01,
270
- "yellow_02" to yellow_02,
271
- "yellow_03" to yellow_03,
272
- "yellow_04" to yellow_04,
273
- "yellow_05" to yellow_05,
274
- "yellow_06" to yellow_06,
275
- "yellow_07" to yellow_07,
276
- "yellow_08" to yellow_08,
277
- "yellow_09" to yellow_09,
278
- "yellow_10" to yellow_10,
279
- "yellow_11" to yellow_11,
280
-
281
- "gold_01" to gold_01,
282
- "gold_02" to gold_02,
283
- "gold_03" to gold_03,
284
- "gold_04" to gold_04,
285
- "gold_05" to gold_05,
286
- "gold_06" to gold_06,
287
- "gold_07" to gold_07,
288
- "gold_08" to gold_08,
289
- "gold_09" to gold_09,
290
- "gold_10" to gold_10,
291
- "gold_11" to gold_11,
292
-
293
- "orange_01" to orange_01,
294
- "orange_02" to orange_02,
295
- "orange_03" to orange_03,
296
- "orange_04" to orange_04,
297
- "orange_05" to orange_05,
298
- "orange_06" to orange_06,
299
- "orange_07" to orange_07,
300
- "orange_08" to orange_08,
301
- "orange_09" to orange_09,
302
- "orange_10" to orange_10,
303
- "orange_11" to orange_11,
304
-
305
- "red_01" to red_01,
306
- "red_02" to red_02,
307
- "red_03" to red_03,
308
- "red_04" to red_04,
309
- "red_05" to red_05,
310
- "red_06" to red_06,
311
- "red_07" to red_07,
312
- "red_08" to red_08,
313
- "red_09" to red_09,
314
- "red_10" to red_10,
315
- "red_11" to red_11,
316
- "opacity_black_20" to opacity_black_20,
317
- "opacity_black_40" to opacity_black_40,
318
- "opacity_black_60" to opacity_black_60,
319
- "opacity_black_80" to opacity_black_80,
320
- "opacity_white_20" to opacity_white_20,
321
- "opacity_white_40" to opacity_white_40,
322
- "opacity_white_60" to opacity_white_60,
323
- "opacity_white_80" to opacity_white_80,
324
- )
325
- }
@@ -1,16 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.runtime.Composable
4
- import androidx.compose.ui.text.font.FontFamily
5
-
6
- /**
7
- * Nạp font từ tài nguyên native của app host thay vì đóng gói bản copy riêng trong SDK.
8
- *
9
- * App host (MoMo Platform) đã bundle sẵn toàn bộ font từ `font-source`:
10
- * - Android: `assets/fonts/<fileName>` (gradle task `syncMomoFonts`)
11
- * - iOS: file rời ở bundle root (pbxproj fileRef được `post_install.rb` trỏ về font-source)
12
- *
13
- * Trả về `null` nếu host không có font đó — caller tự fallback [FontFamily.Default].
14
- */
15
- @Composable
16
- internal expect fun hostFontFamily(fileName: String): FontFamily?
@@ -1,18 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.runtime.getValue
4
- import androidx.compose.runtime.mutableStateOf
5
- import androidx.compose.runtime.setValue
6
-
7
- // Design-system rollout holder, same shape as KitFontScale: the kit is sandboxed and can't read the
8
- // host config, so the host seeds this once at startup from DesignSystemConfig. getFontFamily() reads
9
- // it to decide whether the new default font applies, so every screen follows the flag with no prop
10
- // threading. Backed by snapshot state: writes recompose text automatically.
11
- object KitDesignSystem {
12
- var isWhiteList by mutableStateOf(false)
13
- private set
14
-
15
- fun update(isWhiteList: Boolean) {
16
- this.isWhiteList = isWhiteList
17
- }
18
- }
@@ -1,22 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.runtime.getValue
4
- import androidx.compose.runtime.mutableStateOf
5
- import androidx.compose.runtime.setValue
6
-
7
- // App-wide font-scale holder. The kit is sandboxed and can't read the host cache directly, so the
8
- // host (which sees both core and this kit) seeds this once at startup and pushes runtime updates into
9
- // it. scaleSize() reads it as the fallback, so every screen — including direct NavigationContainer
10
- // screens with no host-pushed MiniAppContext — scales with no per-render prop and no async flicker.
11
- // Backed by snapshot state: writes recompose text automatically.
12
- object KitFontScale {
13
- var userScaleRate by mutableStateOf(1f)
14
- private set
15
- var useOSScaleRate by mutableStateOf(true)
16
- private set
17
-
18
- fun update(userScaleRate: Float, useOSScaleRate: Boolean) {
19
- this.userScaleRate = userScaleRate
20
- this.useOSScaleRate = useOSScaleRate
21
- }
22
- }
@@ -1,12 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.ui.unit.dp
4
-
5
- object Radius {
6
- val XXS = 2.dp
7
- val XS = 4.dp
8
- val S = 8.dp
9
- val M = 12.dp
10
- val L = 16.dp
11
- val XL = 24.dp
12
- }
@@ -1,16 +0,0 @@
1
- package vn.momo.kits.const
2
-
3
- import androidx.compose.ui.unit.dp
4
-
5
- object Spacing {
6
- val XXS = 2.dp
7
- val XS = 4.dp
8
- val S = 8.dp
9
- val M = 12.dp
10
- val L = 16.dp
11
- val XL = 24.dp
12
- val XXL = 32.dp
13
- val Size3XL = 48.dp
14
- val Size4XL = 56.dp
15
- val Size5XL = 64.dp
16
- }