@momo-kits/native-kits 0.158.1-beta.1 → 0.158.1-beta.2-debug

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 (260) hide show
  1. package/build.gradle.kts +11 -0
  2. package/compose/build.gradle.kts +180 -0
  3. package/compose/build.gradle.kts.backup +180 -0
  4. package/compose/compose.podspec +54 -0
  5. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/Platform.android.kt +117 -0
  6. package/compose/src/commonMain/composeResources/font/momosignature.otf +0 -0
  7. package/compose/src/commonMain/composeResources/font/momotrustdisplay.otf +0 -0
  8. package/compose/src/commonMain/composeResources/font/sfprotext_black.otf +0 -0
  9. package/compose/src/commonMain/composeResources/font/sfprotext_black.ttf +0 -0
  10. package/compose/src/commonMain/composeResources/font/sfprotext_bold.ttf +0 -0
  11. package/compose/src/commonMain/composeResources/font/sfprotext_heavy.ttf +0 -0
  12. package/compose/src/commonMain/composeResources/font/sfprotext_light.ttf +0 -0
  13. package/compose/src/commonMain/composeResources/font/sfprotext_medium.ttf +0 -0
  14. package/compose/src/commonMain/composeResources/font/sfprotext_regular.ttf +0 -0
  15. package/compose/src/commonMain/composeResources/font/sfprotext_semibold.ttf +0 -0
  16. package/compose/src/commonMain/composeResources/font/sfprotext_thin.otf +0 -0
  17. package/compose/src/commonMain/composeResources/font/sfprotext_thin.ttf +0 -0
  18. package/compose/src/commonMain/composeResources/font/sfprotext_ultralight.otf +0 -0
  19. package/compose/src/commonMain/composeResources/font/sfprotext_ultralight.ttf +0 -0
  20. package/compose/src/commonMain/kotlin/vn/momo/kits/application/AnimationSearchInput.kt +57 -0
  21. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Context.kt +107 -0
  22. package/compose/src/commonMain/kotlin/vn/momo/kits/application/FloatingButton.kt +201 -0
  23. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Header.kt +222 -0
  24. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderAnimated.kt +48 -0
  25. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderBackground.kt +86 -0
  26. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderDefault.kt +76 -0
  27. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderExtended.kt +76 -0
  28. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderRight.kt +305 -0
  29. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderTitle.kt +33 -0
  30. package/compose/src/commonMain/kotlin/vn/momo/kits/application/LiteScreen.kt +720 -0
  31. package/compose/src/commonMain/kotlin/vn/momo/kits/application/NavigationContainer.kt +121 -0
  32. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Screen.kt +405 -0
  33. package/compose/src/commonMain/kotlin/vn/momo/kits/application/useHeaderSearchAnimation.kt +69 -0
  34. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Avatar.kt +157 -0
  35. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Badge.kt +85 -0
  36. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeDot.kt +32 -0
  37. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeRibbon.kt +340 -0
  38. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BaselineView.kt +198 -0
  39. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Button.kt +357 -0
  40. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Carousel.kt +123 -0
  41. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CheckBox.kt +94 -0
  42. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Chip.kt +136 -0
  43. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Collapse.kt +224 -0
  44. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CupertinoOverscroll.kt +543 -0
  45. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Divider.kt +23 -0
  46. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Icon.kt +76 -0
  47. package/compose/src/commonMain/kotlin/vn/momo/kits/components/IconButton.kt +148 -0
  48. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Image.kt +188 -0
  49. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Information.kt +116 -0
  50. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Input.kt +448 -0
  51. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputDropDown.kt +172 -0
  52. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputMoney.kt +255 -0
  53. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputOTP.kt +231 -0
  54. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputPhoneNumber.kt +233 -0
  55. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputSearch.kt +254 -0
  56. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputTextArea.kt +241 -0
  57. package/compose/src/commonMain/kotlin/vn/momo/kits/components/LazyColumnWithBouncing.kt +364 -0
  58. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Loader.kt +108 -0
  59. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationDot.kt +56 -0
  60. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationNumber.kt +41 -0
  61. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationScroll.kt +92 -0
  62. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationWhiteDot.kt +40 -0
  63. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupNotify.kt +352 -0
  64. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupPromotion.kt +103 -0
  65. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ProgressInfo.kt +338 -0
  66. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Radio.kt +70 -0
  67. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Rating.kt +87 -0
  68. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ScaleSizeScope.kt +17 -0
  69. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Skeleton.kt +96 -0
  70. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Slider.kt +348 -0
  71. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Stepper.kt +256 -0
  72. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Steps.kt +494 -0
  73. package/compose/src/commonMain/kotlin/vn/momo/kits/components/SuggestAction.kt +131 -0
  74. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Swipe.kt +215 -0
  75. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Switch.kt +96 -0
  76. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TabView.kt +531 -0
  77. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tag.kt +92 -0
  78. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Text.kt +130 -0
  79. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Title.kt +214 -0
  80. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tooltip.kt +590 -0
  81. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TrustBanner.kt +177 -0
  82. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Uploader.kt +192 -0
  83. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePicker.kt +205 -0
  84. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerTypes.kt +29 -0
  85. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerUtils.kt +239 -0
  86. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/WheelPicker.kt +191 -0
  87. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Colors.kt +306 -0
  88. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Radius.kt +12 -0
  89. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Spacing.kt +16 -0
  90. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Theme.kt +188 -0
  91. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Typography.kt +285 -0
  92. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Card.kt +2 -0
  93. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Item.kt +35 -0
  94. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Section.kt +2 -0
  95. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/AutomationId.kt +50 -0
  96. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Clickable.kt +68 -0
  97. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Conditional.kt +11 -0
  98. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/DeprecatedModifier.kt +14 -0
  99. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Shadow.kt +50 -0
  100. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Size.kt +51 -0
  101. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/BottomSheet.kt +253 -0
  102. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ModalScreen.kt +133 -0
  103. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigation.kt +99 -0
  104. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/NavigationContainer.kt +164 -0
  105. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigator.kt +333 -0
  106. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackScreen.kt +552 -0
  107. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTab.kt +162 -0
  108. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTabBar.kt +243 -0
  109. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/CurvedContainer.kt +86 -0
  110. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/FloatingButton.kt +187 -0
  111. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/Header.kt +279 -0
  112. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderBackground.kt +80 -0
  113. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderRight.kt +306 -0
  114. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderTitle.kt +32 -0
  115. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderUser.kt +370 -0
  116. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/SnackBar.kt +132 -0
  117. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/tracking/ScreenTracker.kt +167 -0
  118. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/Platform.kt +46 -0
  119. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Icons.kt +1329 -0
  120. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Resources.kt +62 -0
  121. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Tracking.kt +15 -0
  122. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Utils.kt +88 -0
  123. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/Platform.ios.kt +161 -0
  124. package/example/ios/Example.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/Example.xcscheme +32 -0
  125. package/example/ios/Example.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  126. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  127. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/WorkspaceSettings.xcsettings +16 -0
  128. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +6 -0
  129. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +5 -0
  130. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +58 -0
  131. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/Pods-Example.xcscheme +58 -0
  132. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SDWebImage.xcscheme +58 -0
  133. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +58 -0
  134. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SkeletonUI.xcscheme +58 -0
  135. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/lottie-ios-LottiePrivacyInfo.xcscheme +58 -0
  136. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/lottie-ios.xcscheme +58 -0
  137. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +60 -0
  138. package/gradle/libs.versions.toml +57 -0
  139. package/gradle/wrapper/gradle-wrapper.jar +0 -0
  140. package/gradle/wrapper/gradle-wrapper.properties +8 -0
  141. package/gradle.properties +26 -0
  142. package/gradlew +252 -0
  143. package/gradlew.bat +94 -0
  144. package/local.properties +8 -0
  145. package/package.json +1 -1
  146. package/settings.gradle.kts +52 -0
  147. package/.claude/settings.local.json +0 -11
  148. package/.claude/skills/design-system/SKILL.md +0 -88
  149. package/.claude/skills/design-system/references/components/avatar.md +0 -134
  150. package/.claude/skills/design-system/references/components/badge.md +0 -127
  151. package/.claude/skills/design-system/references/components/bottom-tab.md +0 -177
  152. package/.claude/skills/design-system/references/components/bottomsheet.md +0 -170
  153. package/.claude/skills/design-system/references/components/button.md +0 -206
  154. package/.claude/skills/design-system/references/components/carousel.md +0 -117
  155. package/.claude/skills/design-system/references/components/checkbox.md +0 -98
  156. package/.claude/skills/design-system/references/components/chip.md +0 -146
  157. package/.claude/skills/design-system/references/components/collapse.md +0 -120
  158. package/.claude/skills/design-system/references/components/date-picker.md +0 -119
  159. package/.claude/skills/design-system/references/components/divider.md +0 -84
  160. package/.claude/skills/design-system/references/components/icon.md +0 -130
  161. package/.claude/skills/design-system/references/components/image.md +0 -81
  162. package/.claude/skills/design-system/references/components/information.md +0 -107
  163. package/.claude/skills/design-system/references/components/input-dropdown.md +0 -138
  164. package/.claude/skills/design-system/references/components/input-money.md +0 -157
  165. package/.claude/skills/design-system/references/components/input-otp.md +0 -132
  166. package/.claude/skills/design-system/references/components/input-phone-number.md +0 -140
  167. package/.claude/skills/design-system/references/components/input-search.md +0 -124
  168. package/.claude/skills/design-system/references/components/input-text-area.md +0 -133
  169. package/.claude/skills/design-system/references/components/input.md +0 -152
  170. package/.claude/skills/design-system/references/components/loader.md +0 -87
  171. package/.claude/skills/design-system/references/components/pagination.md +0 -105
  172. package/.claude/skills/design-system/references/components/popup-notify.md +0 -128
  173. package/.claude/skills/design-system/references/components/progress-info.md +0 -114
  174. package/.claude/skills/design-system/references/components/radio.md +0 -86
  175. package/.claude/skills/design-system/references/components/rating.md +0 -126
  176. package/.claude/skills/design-system/references/components/skeleton.md +0 -120
  177. package/.claude/skills/design-system/references/components/slider.md +0 -141
  178. package/.claude/skills/design-system/references/components/snackbar.md +0 -97
  179. package/.claude/skills/design-system/references/components/stepper.md +0 -100
  180. package/.claude/skills/design-system/references/components/steps.md +0 -91
  181. package/.claude/skills/design-system/references/components/suggest-action.md +0 -95
  182. package/.claude/skills/design-system/references/components/swipe.md +0 -121
  183. package/.claude/skills/design-system/references/components/switch.md +0 -98
  184. package/.claude/skills/design-system/references/components/tab-view.md +0 -120
  185. package/.claude/skills/design-system/references/components/tag.md +0 -118
  186. package/.claude/skills/design-system/references/components/text.md +0 -151
  187. package/.claude/skills/design-system/references/components/toast.md +0 -99
  188. package/.claude/skills/design-system/references/components/tooltip.md +0 -138
  189. package/.claude/skills/design-system/references/components/top-nav-miniapp.md +0 -94
  190. package/.claude/skills/design-system/references/components/top-nav.md +0 -226
  191. package/.claude/skills/design-system/references/components/uploader.md +0 -115
  192. package/.claude/skills/design-system/references/navigation/bottom-tab.md +0 -131
  193. package/.claude/skills/design-system/references/navigation/bottomsheet.md +0 -161
  194. package/.claude/skills/design-system/references/navigation/modal.md +0 -133
  195. package/.claude/skills/design-system/references/navigation/navigation-options.md +0 -225
  196. package/.claude/skills/design-system/references/navigation/navigator.md +0 -111
  197. package/.claude/skills/design-system/references/navigation/setup.md +0 -134
  198. package/.claude/skills/design-system/references/navigation/stack.md +0 -128
  199. package/.claude/skills/design-system/references/spec-convention.md +0 -80
  200. package/.claude/skills/design-system/references/tokens/colors.md +0 -131
  201. package/.claude/skills/design-system/references/tokens/spacing-radius.md +0 -144
  202. package/.claude/skills/design-system/references/tokens/theme.md +0 -125
  203. package/.claude/skills/design-system/references/tokens/typography.md +0 -135
  204. package/.claude/skills/design-system-kits/SKILL.md +0 -102
  205. package/.claude/skills/design-system-kits/references/code-convention.md +0 -118
  206. package/.claude/skills/design-system-kits/references/components/avatar.md +0 -45
  207. package/.claude/skills/design-system-kits/references/components/badge.md +0 -27
  208. package/.claude/skills/design-system-kits/references/components/button.md +0 -65
  209. package/.claude/skills/design-system-kits/references/components/carousel.md +0 -51
  210. package/.claude/skills/design-system-kits/references/components/checkbox.md +0 -39
  211. package/.claude/skills/design-system-kits/references/components/chip.md +0 -54
  212. package/.claude/skills/design-system-kits/references/components/collapse.md +0 -63
  213. package/.claude/skills/design-system-kits/references/components/date-picker.md +0 -36
  214. package/.claude/skills/design-system-kits/references/components/divider.md +0 -21
  215. package/.claude/skills/design-system-kits/references/components/icon.md +0 -382
  216. package/.claude/skills/design-system-kits/references/components/image.md +0 -62
  217. package/.claude/skills/design-system-kits/references/components/information.md +0 -61
  218. package/.claude/skills/design-system-kits/references/components/input-dropdown.md +0 -92
  219. package/.claude/skills/design-system-kits/references/components/input-money.md +0 -128
  220. package/.claude/skills/design-system-kits/references/components/input-otp.md +0 -85
  221. package/.claude/skills/design-system-kits/references/components/input-phone-number.md +0 -96
  222. package/.claude/skills/design-system-kits/references/components/input-search.md +0 -127
  223. package/.claude/skills/design-system-kits/references/components/input-text-area.md +0 -100
  224. package/.claude/skills/design-system-kits/references/components/input.md +0 -126
  225. package/.claude/skills/design-system-kits/references/components/loader.md +0 -41
  226. package/.claude/skills/design-system-kits/references/components/pagination.md +0 -47
  227. package/.claude/skills/design-system-kits/references/components/popup-notify.md +0 -69
  228. package/.claude/skills/design-system-kits/references/components/popup-promotion.md +0 -35
  229. package/.claude/skills/design-system-kits/references/components/progress-info.md +0 -55
  230. package/.claude/skills/design-system-kits/references/components/radio.md +0 -42
  231. package/.claude/skills/design-system-kits/references/components/rating.md +0 -36
  232. package/.claude/skills/design-system-kits/references/components/skeleton.md +0 -25
  233. package/.claude/skills/design-system-kits/references/components/slider.md +0 -53
  234. package/.claude/skills/design-system-kits/references/components/snackbar.md +0 -52
  235. package/.claude/skills/design-system-kits/references/components/stepper.md +0 -46
  236. package/.claude/skills/design-system-kits/references/components/steps.md +0 -57
  237. package/.claude/skills/design-system-kits/references/components/suggest-action.md +0 -44
  238. package/.claude/skills/design-system-kits/references/components/swipe.md +0 -44
  239. package/.claude/skills/design-system-kits/references/components/switch.md +0 -43
  240. package/.claude/skills/design-system-kits/references/components/tab-view.md +0 -56
  241. package/.claude/skills/design-system-kits/references/components/tag.md +0 -50
  242. package/.claude/skills/design-system-kits/references/components/text.md +0 -56
  243. package/.claude/skills/design-system-kits/references/components/toast.md +0 -51
  244. package/.claude/skills/design-system-kits/references/components/tooltip.md +0 -95
  245. package/.claude/skills/design-system-kits/references/components/uploader.md +0 -48
  246. package/.claude/skills/design-system-kits/references/design-spec-structure.md +0 -356
  247. package/.claude/skills/design-system-kits/references/design-spec-to-code.md +0 -596
  248. package/.claude/skills/design-system-kits/references/navigation/bottom-tab.md +0 -155
  249. package/.claude/skills/design-system-kits/references/navigation/bottomsheet.md +0 -94
  250. package/.claude/skills/design-system-kits/references/navigation/modal.md +0 -125
  251. package/.claude/skills/design-system-kits/references/navigation/navigation-options.md +0 -430
  252. package/.claude/skills/design-system-kits/references/navigation/navigator.md +0 -177
  253. package/.claude/skills/design-system-kits/references/navigation/setup.md +0 -94
  254. package/.claude/skills/design-system-kits/references/navigation/stack.md +0 -152
  255. package/.claude/skills/design-system-kits/references/screen-layout-rule.md +0 -125
  256. package/.claude/skills/design-system-kits/references/tokens/colors.md +0 -183
  257. package/.claude/skills/design-system-kits/references/tokens/spacing-radius.md +0 -45
  258. package/.claude/skills/design-system-kits/references/tokens/theme.md +0 -97
  259. package/.claude/skills/design-system-kits/references/tokens/typography.md +0 -105
  260. package/.claude/skills/vibe-design/SKILL.md +0 -306
@@ -1,43 +0,0 @@
1
- # Switch
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { Switch } from '@momo-kits/foundation';
7
-
8
- <Switch
9
- value={enabled} // current toggle state (default: false)
10
- onChange={(enabled) => setEnabled(enabled)} // called with new boolean value
11
- disabled={false} // disable the switch (default: false)
12
- style={{}} // optional custom styles
13
- accessibilityLabel="toggle_notifications" // accessibility label
14
- params={{ field: 'notifications' }} // auto tracking params
15
- />
16
- ```
17
-
18
- ## Compose
19
-
20
- ```kotlin
21
- import vn.momo.kits.components.Switch
22
-
23
- Switch(
24
- value = isEnabled, // current toggle state (default: false)
25
- onChange = { enabled -> }, // called with new boolean value
26
- disabled = false, // disable the switch (default: false)
27
- title = "Notifications", // optional label text
28
- accessibilityId = "toggle_notifications", // automation ID
29
- modifier = Modifier, // optional modifier
30
- )
31
- ```
32
-
33
- Same API naming on both platforms (`value`, `onChange`). Compose adds `title` and `accessibilityId`.
34
-
35
- ## Key Differences
36
-
37
- | Feature | React Native | Compose |
38
- |---------|-------------|---------|
39
- | Value prop | `value` | `value` |
40
- | Change handler | `onChange` | `onChange` |
41
- | Label | Not built-in (wrap in `Text`) | `title` param |
42
- | Automation ID | `accessibilityLabel` | `accessibilityId` |
43
- | Modifier/Style | `style` prop | `modifier` param |
@@ -1,56 +0,0 @@
1
- # TabView
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { TabView } from '@momo-kits/tab-view';
7
-
8
- <TabView
9
- tabs={[
10
- { title: 'Tab 1', component: <Tab1 /> },
11
- { title: 'Tab 2', icon: '24_info', badgeValue: 3 },
12
- ]}
13
- scrollable={false}
14
- type="default"
15
- initialPage={0}
16
- onPressTabItem={(index) => {}}
17
- direction="row"
18
- fitContent={false}
19
- />
20
- ```
21
-
22
- ## Compose
23
-
24
- ```kotlin
25
- import vn.momo.kits.components.TabView
26
- import vn.momo.kits.components.TabViewItem
27
- import vn.momo.kits.components.TabViewType
28
- import vn.momo.kits.components.TabViewDirection
29
-
30
- TabView(
31
- tabs = listOf(
32
- TabViewItem(title = "Tab 1", content = { Text("Content 1") }),
33
- TabViewItem(title = "Tab 2", icon = "24_info", badgeValue = "3", content = { Text("Content 2") }),
34
- ),
35
- initialPage = 0,
36
- type = TabViewType.DEFAULT, // DEFAULT | CARD
37
- scrollable = false,
38
- fitContent = false,
39
- selectedColor = null,
40
- unselectedColor = null,
41
- direction = TabViewDirection.ROW, // ROW | COLUMN
42
- userScrollEnabled = true,
43
- onPressTabItem = { index -> },
44
- onPageSelected = { index -> },
45
- )
46
- ```
47
-
48
- ## Key Differences
49
-
50
- | Feature | React Native | Compose |
51
- |---------|-------------|---------|
52
- | Content | `component` prop | `content` slot |
53
- | Lazy rendering | Built-in | `mutableStateListOf` tracks visited pages |
54
- | Indicator animation | Native | `animateDpAsState` (200ms) |
55
- | Direction | `string` | `TabViewDirection` enum |
56
- | Type | `string` | `TabViewType` enum |
@@ -1,50 +0,0 @@
1
- # Tag
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { Tag } from '@momo-kits/foundation';
7
-
8
- <Tag
9
- label="Active"
10
- size="large" // 'medium'|'large' (default: 'large')
11
- color="green" // 'default'|'orange'|'green'|'red'|'blue'|'grey'
12
- icon="icon_name" // optional left icon
13
- customColor={Colors.pink_03} // overrides color (use _03 tint recommended)
14
- accessibilityLabel="tag_active"
15
- style={{ marginRight: Spacing.S }} // optional custom style
16
- />
17
- ```
18
-
19
- ## Compose
20
-
21
- ```kotlin
22
- import vn.momo.kits.components.Tag
23
- import vn.momo.kits.components.TagSize
24
- import vn.momo.kits.components.TagColor
25
-
26
- Tag(
27
- label = "Active",
28
- size = TagSize.Medium, // Large(24f), Medium(18f)
29
- color = TagColor.Green, // Default, Orange, Green, Red, Blue, Grey
30
- customColor = Colors.pink_03, // overrides color when provided
31
- )
32
- ```
33
-
34
- ### TagSize (Compose)
35
-
36
- | Value | Height |
37
- |-------|--------|
38
- | `Large` | 24f |
39
- | `Medium` | 18f |
40
-
41
- ### TagColor (Compose)
42
-
43
- | Value | Background | Text |
44
- |-------|-----------|------|
45
- | `Default` | black_04 | black_17 |
46
- | `Orange` | orange_08 | orange_03 |
47
- | `Green` | green_08 | green_03 |
48
- | `Red` | red_08 | red_03 |
49
- | `Blue` | blue_08 | blue_03 |
50
- | `Grey` | black_04 | black_12 |
@@ -1,56 +0,0 @@
1
- # Text
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { Text } from '@momo-kits/foundation';
7
-
8
- <Text typography="body_default_regular" color={Colors.black_17} fontFamily="MomoTrustDisplay" maxScaleRate={1.5} style={{}}>Label</Text>
9
- ```
10
-
11
- ### Props
12
-
13
- Extends `TextProps` (React Native `Text`). Plus:
14
-
15
- | Prop | Type | Default | Description |
16
- | -------------- | ---------------------- | ------------------------ | ---------------------- |
17
- | `typography` | `Typography` | `'body_default_regular'` | Typography token |
18
- | `color` | `string` | theme text color | Text color |
19
- | `fontFamily` | `string` | theme font | Custom font family |
20
- | `maxScaleRate` | `number` | — | Max font scale rate |
21
- | `style` | `StyleProp<TextStyle>` | — | Additional text styles |
22
- | `children` | `ReactNode` | — | Text content |
23
-
24
- ## Compose
25
-
26
- ```kotlin
27
- import vn.momo.kits.components.Text
28
- import vn.momo.kits.const.Typography
29
-
30
- Text(text = "Label", style = Typography.bodyDefaultRegular)
31
- Text(text = "Title", style = Typography.headlineDefaultBold)
32
- ```
33
-
34
- Signature:
35
-
36
- ```kotlin
37
- @Composable
38
- fun Text(
39
- text: String,
40
- color: Color? = null,
41
- style: TextStyle = Typography.bodyDefaultRegular,
42
- modifier: Modifier = Modifier,
43
- textAlign: TextAlign? = TextAlign.Start,
44
- maxLines: Int = Int.MAX_VALUE,
45
- overflow: TextOverflow = TextOverflow.Clip,
46
- textDecoration: TextDecoration? = null,
47
- onTextLayout: ((TextLayoutResult) -> Unit)? = null,
48
- fontFamily: String? = null,
49
- minLines: Int = 1,
50
- letterSpacing: TextUnit = TextUnit.Unspecified,
51
- softWrap: Boolean = true,
52
- accessibilityId: String? = null,
53
- )
54
- ```
55
-
56
- > **Note:** NO `token` parameter. Use `style = Typography.xxx` instead.
@@ -1,51 +0,0 @@
1
- # Toast
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { ApplicationContext } from '@momo-kits/foundation';
7
-
8
- navigator?.maxApi?.showToast({
9
- title: 'Saved successfully',
10
- type: 'success', // 'success'|'warning'|'network'|'default'
11
- undoTitle: "Back",
12
- onUndoPress: () => { },
13
- });
14
- ```
15
-
16
- ## Compose
17
-
18
- Toast uses the **MaxApi bridge** — no standalone Composable:
19
-
20
- ```kotlin
21
- import vn.momo.kits.navigation.LocalMaxApi
22
-
23
- @Composable
24
- fun ToastExample() {
25
- val maxApi = LocalMaxApi.current
26
-
27
- Button(
28
- title = "Show toast",
29
- onClick = {
30
- maxApi?.showToast(
31
- params = mapOf(
32
- "title" to "Saved successfully",
33
- "type" to "success",
34
- "undoTitle" to "Undo",
35
- ),
36
- callback = { result -> },
37
- )
38
- }
39
- )
40
- }
41
- ```
42
-
43
- > `LocalMaxApi` is `null` outside a properly set up navigation tree. For inline banner notifications use **SnackBar** (`snackbar.md`).
44
-
45
- ## Key Differences
46
-
47
- | Feature | React Native | Compose |
48
- |---------|-------------|---------|
49
- | API | `navigator.maxApi` | `LocalMaxApi.current` |
50
- | Inline composable | Not available | Not available |
51
- | Navigation dependency | Required | Required |
@@ -1,95 +0,0 @@
1
- # Tooltip
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { Tooltip } from '@momo-kits/animated-tooltip';
7
- import type { TooltipRef, TooltipButton } from '@momo-kits/tooltip';
8
-
9
- const tooltipRef = useRef<TooltipRef>(null);
10
-
11
- <Tooltip
12
- ref={tooltipRef}
13
- placement="top" // 'top' | 'bottom' | 'left' | 'right' (default: 'top')
14
- align="center" // 'start' | 'center' | 'end' (default: 'center')
15
- title="Title"
16
- description="Helpful hint"
17
- buttons={[
18
- { title: 'Action', onPress: () => {} },
19
- ]}
20
- onVisibleChange={(visible) => {}}
21
- onPressClose={() => {}}
22
- accessibilityLabel="info_tooltip"
23
- containerStyle={{}}
24
- >
25
- <Button title="Info" type="text" />
26
- </Tooltip>
27
-
28
- // Ref methods
29
- tooltipRef.current?.show();
30
- tooltipRef.current?.hide();
31
- ```
32
-
33
- Package: `@momo-kits/animated-tooltip`
34
-
35
- ### Types
36
-
37
- ```tsx
38
- type TooltipButton = {
39
- title?: string;
40
- icon?: string;
41
- onPress?: () => void;
42
- };
43
-
44
- type TooltipRef = {
45
- show: () => void;
46
- hide: () => void;
47
- };
48
- ```
49
-
50
- ## Compose
51
-
52
- ```kotlin
53
- import vn.momo.kits.components.Tooltip
54
- import vn.momo.kits.components.TooltipButton
55
- import vn.momo.kits.components.rememberTooltipState
56
-
57
- val state = rememberTooltipState()
58
-
59
- Tooltip(
60
- state = state,
61
- title = "Title", // optional tooltip title
62
- description = "Helpful hint", // tooltip description text
63
- buttons = listOf( // optional action buttons
64
- TooltipButton(title = "Action", onPress = { })
65
- ),
66
- placement = TooltipPlacement.TOP, // TOP | BOTTOM | LEFT | RIGHT (default: TOP)
67
- align = TooltipAlign.CENTER, // START | CENTER | END (default: CENTER)
68
- onVisibleChange = { visible -> }, // visibility change callback
69
- onPressClose = {}, // close button pressed callback
70
- modifier = Modifier,
71
- ) {
72
- Button(
73
- title = "Show tooltip",
74
- onClick = { state.show() },
75
- size = Size.SMALL,
76
- )
77
- }
78
-
79
- // State methods
80
- state.show()
81
- state.hide()
82
- state.toggle()
83
- ```
84
-
85
- ### Types
86
-
87
- ```kotlin
88
- enum class TooltipPlacement { TOP, BOTTOM, LEFT, RIGHT }
89
- enum class TooltipAlign { START, CENTER, END }
90
- data class TooltipButton(
91
- val title: String? = null,
92
- val icon: String? = null,
93
- val onPress: (() -> Unit)? = null,
94
- )
95
- ```
@@ -1,48 +0,0 @@
1
- # Uploader
2
-
3
- ## React Native
4
-
5
- ```tsx
6
- import { Uploader } from '@momo-kits/uploader';
7
-
8
- <Uploader
9
- images={files}
10
- numberOfImages={5}
11
- disabled={false}
12
- width={64}
13
- height={64}
14
- onAdd={() => launchImagePicker()}
15
- onCancel={(image, index) => removeFile(index)}
16
- onPressImage={(image, index) => previewImage(image)}
17
- />
18
- ```
19
-
20
- ## Compose
21
-
22
- ```kotlin
23
- import vn.momo.kits.components.Uploader
24
- import vn.momo.kits.components.UploadImage
25
-
26
- Uploader(
27
- images = listOf(
28
- UploadImage(uri = "https://...", loading = false),
29
- ),
30
- numberOfImages = 5,
31
- disabled = false,
32
- width = 64.dp,
33
- height = 64.dp,
34
- onAdd = { launchPicker() },
35
- onCancel = { image, index -> }, // null = hide cancel button
36
- onPressImage = { image, index -> },
37
- )
38
- ```
39
-
40
- ## Key Differences
41
-
42
- | Feature | React Native | Compose |
43
- |---------|-------------|---------|
44
- | Image data | `{ uri, loading }[]` | `List<UploadImage>` |
45
- | Cancel button | Always shown | `onCancel = null` hides it |
46
- | Layout | Fixed grid | Horizontal scroll row |
47
- | Dashed border | Built-in | `Modifier.dashedBorder` |
48
- | Loading overlay | Built-in | White 40% + `Skeleton` |