@momo-kits/native-kits 0.157.1-beta.9-debug → 0.157.1-com.1-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 (369) hide show
  1. package/compose/build.gradle.kts +1 -1
  2. package/compose/compose.podspec +1 -1
  3. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Avatar.kt +157 -0
  4. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Carousel.kt +123 -0
  5. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Collapse.kt +224 -0
  6. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Loader.kt +108 -0
  7. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ProgressInfo.kt +350 -0
  8. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Rating.kt +87 -0
  9. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Slider.kt +360 -0
  10. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Stepper.kt +256 -0
  11. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Steps.kt +494 -0
  12. package/compose/src/commonMain/kotlin/vn/momo/kits/components/SuggestAction.kt +131 -0
  13. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Swipe.kt +215 -0
  14. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TabView.kt +449 -0
  15. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tooltip.kt +21 -7
  16. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Uploader.kt +192 -0
  17. package/gradle.properties +1 -1
  18. package/ios/Input/Input.swift +4 -0
  19. package/local.properties +2 -2
  20. package/package.json +1 -1
  21. package/src/doctor/README.md +73 -0
  22. package/src/doctor/package-lock.json +885 -0
  23. package/src/doctor/package.json +44 -0
  24. package/src/doctor/publish.sh +27 -0
  25. package/src/doctor/src/Users.json +112 -0
  26. package/src/doctor/src/Whitelist.json +6 -0
  27. package/src/doctor/src/commands/check.ts +81 -0
  28. package/src/doctor/src/commands/doctor.ts +193 -0
  29. package/src/doctor/src/index.ts +35 -0
  30. package/src/doctor/src/logger.ts +84 -0
  31. package/src/doctor/src/task/native.ts +21 -0
  32. package/src/doctor/src/task/utils.ts +20 -0
  33. package/src/doctor/src/utils/checkCoreDependencies.ts +138 -0
  34. package/src/doctor/src/utils/checkDeletedPackage.ts +53 -0
  35. package/src/doctor/src/utils/checkDeprecatedPackages.ts +168 -0
  36. package/src/doctor/src/utils/checkDeprecatedVersion.ts +60 -0
  37. package/src/doctor/src/utils/checkShareDependencies.ts +251 -0
  38. package/src/doctor/src/utils/checkWrongVersionCommunityPackage.ts +64 -0
  39. package/src/doctor/src/utils/getErrorMessage.ts +84 -0
  40. package/src/doctor/src/utils/scanComponentUsage.ts +206 -0
  41. package/src/doctor/src/utils/scanFoundationImports.ts +169 -0
  42. package/src/doctor/src/utils/scanMaxApiUsage.ts +86 -0
  43. package/src/doctor/src/utils/scanNativeModulesUsage.ts +78 -0
  44. package/src/doctor/src/utils/sendMessage.ts +28 -0
  45. package/src/doctor/tsconfig.json +14 -0
  46. package/src/doctor/yarn.lock +492 -0
  47. package/src/foundations/Application/BottomSheet.tsx +358 -0
  48. package/src/foundations/Application/BottomTab/BottomTabBar.tsx +320 -0
  49. package/src/foundations/Application/BottomTab/CustomBottomTabItem.tsx +155 -0
  50. package/src/foundations/Application/BottomTab/TabBarIcon.tsx +113 -0
  51. package/src/foundations/Application/BottomTab/index.tsx +449 -0
  52. package/src/foundations/Application/Components/BackgroundImageView.tsx +126 -0
  53. package/src/foundations/Application/Components/HeaderAnimated.tsx +69 -0
  54. package/src/foundations/Application/Components/HeaderBackground.tsx +83 -0
  55. package/src/foundations/Application/Components/HeaderExtendHeader.tsx +225 -0
  56. package/src/foundations/Application/Components/HeaderLeft.tsx +93 -0
  57. package/src/foundations/Application/Components/HeaderRight.tsx +444 -0
  58. package/src/foundations/Application/Components/HeaderTitle.tsx +596 -0
  59. package/src/foundations/Application/Components/NavigationButton.tsx +76 -0
  60. package/src/foundations/Application/Components/SearchHeader.tsx +127 -0
  61. package/src/foundations/Application/Localize.ts +44 -0
  62. package/src/foundations/Application/ModalScreen.tsx +148 -0
  63. package/src/foundations/Application/Navigation.ts +63 -0
  64. package/src/foundations/Application/NavigationContainer.tsx +245 -0
  65. package/src/foundations/Application/Navigator.ts +171 -0
  66. package/src/foundations/Application/ScaleSizeProvider.tsx +16 -0
  67. package/src/foundations/Application/StackScreen.tsx +420 -0
  68. package/src/foundations/Application/TooltipPortal.tsx +127 -0
  69. package/src/foundations/Application/WidgetContainer.tsx +162 -0
  70. package/src/foundations/Application/index.ts +34 -0
  71. package/src/foundations/Application/types.ts +350 -0
  72. package/src/foundations/Application/utils.tsx +239 -0
  73. package/src/foundations/Assets/DotAnimation.json +256 -0
  74. package/src/foundations/Assets/SpinnerAnimation.json +1027 -0
  75. package/src/foundations/Assets/icon.json +4052 -0
  76. package/src/foundations/Assets/icon_bank.json +506 -0
  77. package/src/foundations/Assets/language.json +208 -0
  78. package/src/foundations/Assets/lottie_circle_loader.json +1 -0
  79. package/src/foundations/Assets/pinAnimation.json +1 -0
  80. package/src/foundations/Assets/unpinAnimation.json +1 -0
  81. package/src/foundations/Badge/Badge.tsx +104 -0
  82. package/src/foundations/Badge/BadgeDot.tsx +35 -0
  83. package/src/foundations/Badge/BadgeDotAnimation.tsx +95 -0
  84. package/src/foundations/Badge/BadgeRibbon.tsx +112 -0
  85. package/src/foundations/Badge/Shape.tsx +29 -0
  86. package/src/foundations/Badge/index.tsx +8 -0
  87. package/src/foundations/Badge/styles.ts +125 -0
  88. package/src/foundations/Badge/types.ts +68 -0
  89. package/src/foundations/Button/index.tsx +371 -0
  90. package/src/foundations/Button/styles.ts +65 -0
  91. package/src/foundations/CheckBox/index.tsx +104 -0
  92. package/src/foundations/CheckBox/styles.ts +17 -0
  93. package/src/foundations/CheckBox/types.ts +37 -0
  94. package/src/foundations/Consts/colors+spacing+radius.ts +232 -0
  95. package/src/foundations/Consts/index.ts +4 -0
  96. package/src/foundations/Consts/styles.ts +52 -0
  97. package/src/foundations/Consts/theme.ts +121 -0
  98. package/src/foundations/Context/index.ts +27 -0
  99. package/src/foundations/Divider/DashDivider.tsx +46 -0
  100. package/src/foundations/Divider/index.tsx +45 -0
  101. package/src/foundations/FoundationList/index.tsx +12 -0
  102. package/src/foundations/FoundationList/types.ts +7 -0
  103. package/src/foundations/Icon/index.tsx +57 -0
  104. package/src/foundations/Icon/types.ts +32 -0
  105. package/src/foundations/IconButton/index.tsx +144 -0
  106. package/src/foundations/IconButton/styles.ts +20 -0
  107. package/src/foundations/Image/index.tsx +115 -0
  108. package/src/foundations/Image/styles.ts +7 -0
  109. package/src/foundations/Image/types.ts +7 -0
  110. package/src/foundations/Input/Input.tsx +280 -0
  111. package/src/foundations/Input/InputDropDown.tsx +161 -0
  112. package/src/foundations/Input/InputMoney.tsx +325 -0
  113. package/src/foundations/Input/InputOTP.tsx +299 -0
  114. package/src/foundations/Input/InputPhoneNumber.tsx +287 -0
  115. package/src/foundations/Input/InputSearch.tsx +351 -0
  116. package/src/foundations/Input/InputTextArea.tsx +218 -0
  117. package/src/foundations/Input/SystemTextInput.tsx +44 -0
  118. package/src/foundations/Input/TextTyping.tsx +115 -0
  119. package/src/foundations/Input/common.tsx +243 -0
  120. package/src/foundations/Input/index.tsx +373 -0
  121. package/src/foundations/Input/styles.ts +226 -0
  122. package/src/foundations/Input/utils.ts +97 -0
  123. package/src/foundations/Layout/Card.tsx +108 -0
  124. package/src/foundations/Layout/FloatingButton.tsx +179 -0
  125. package/src/foundations/Layout/GridSystem.tsx +137 -0
  126. package/src/foundations/Layout/Item.tsx +59 -0
  127. package/src/foundations/Layout/ItemList.tsx +66 -0
  128. package/src/foundations/Layout/ItemSectionList.tsx +40 -0
  129. package/src/foundations/Layout/Screen.tsx +644 -0
  130. package/src/foundations/Layout/Section.tsx +103 -0
  131. package/src/foundations/Layout/TrackingScope.tsx +18 -0
  132. package/src/foundations/Layout/index.ts +34 -0
  133. package/src/foundations/Layout/styles.ts +95 -0
  134. package/src/foundations/Layout/types.ts +40 -0
  135. package/src/foundations/Layout/utils.ts +47 -0
  136. package/src/foundations/Loader/DotLoader.tsx +37 -0
  137. package/src/foundations/Loader/Loader.tsx +13 -0
  138. package/src/foundations/Loader/ProgressBar.tsx +45 -0
  139. package/src/foundations/Loader/Spinner.tsx +29 -0
  140. package/src/foundations/Loader/index.tsx +6 -0
  141. package/src/foundations/Loader/styles.ts +10 -0
  142. package/src/foundations/Loader/types.ts +35 -0
  143. package/src/foundations/Loader/utils.ts +25 -0
  144. package/src/foundations/Pagination/Dot.tsx +19 -0
  145. package/src/foundations/Pagination/PaginationDot.tsx +44 -0
  146. package/src/foundations/Pagination/PaginationNumber.tsx +31 -0
  147. package/src/foundations/Pagination/PaginationScroll.tsx +99 -0
  148. package/src/foundations/Pagination/PaginationWhiteDot.tsx +43 -0
  149. package/src/foundations/Pagination/index.tsx +25 -0
  150. package/src/foundations/Pagination/styles.ts +51 -0
  151. package/src/foundations/Pagination/types.ts +40 -0
  152. package/src/foundations/Popup/PopupNotify.tsx +276 -0
  153. package/src/foundations/Popup/PopupPromotion.tsx +118 -0
  154. package/src/foundations/Popup/index.tsx +4 -0
  155. package/src/foundations/Popup/types.ts +96 -0
  156. package/src/foundations/Radio/index.tsx +108 -0
  157. package/src/foundations/Radio/styles.ts +15 -0
  158. package/src/foundations/Radio/types.ts +31 -0
  159. package/src/foundations/Skeleton/index.tsx +118 -0
  160. package/src/foundations/Skeleton/styles.ts +5 -0
  161. package/src/foundations/Skeleton/types.ts +6 -0
  162. package/src/foundations/Switch/index.tsx +68 -0
  163. package/src/foundations/Switch/styles.ts +25 -0
  164. package/src/foundations/Switch/types.ts +19 -0
  165. package/src/foundations/Tag/index.tsx +128 -0
  166. package/src/foundations/Tag/types.ts +41 -0
  167. package/src/foundations/Text/index.tsx +241 -0
  168. package/src/foundations/Text/styles.ts +78 -0
  169. package/src/foundations/Text/types.ts +53 -0
  170. package/src/foundations/Text/utils.ts +63 -0
  171. package/src/foundations/Title/index.tsx +285 -0
  172. package/src/foundations/Title/styles.ts +55 -0
  173. package/src/foundations/Title/types.ts +21 -0
  174. package/src/foundations/index.ts +50 -0
  175. package/src/foundations/package.json +35 -0
  176. package/src/foundations/publish.sh +17 -0
  177. package/src/libs/AutoComplete/index.tsx +88 -0
  178. package/src/libs/AutoComplete/package.json +16 -0
  179. package/src/libs/AutoComplete/publish.sh +16 -0
  180. package/src/libs/AutoComplete/styles.ts +15 -0
  181. package/src/libs/AutoComplete/types.ts +60 -0
  182. package/src/libs/Avatar/index.tsx +146 -0
  183. package/src/libs/Avatar/package.json +16 -0
  184. package/src/libs/Avatar/publish.sh +20 -0
  185. package/src/libs/Avatar/styles.ts +18 -0
  186. package/src/libs/Avatar/types.ts +57 -0
  187. package/src/libs/Badge/Badge.tsx +70 -0
  188. package/src/libs/Badge/BadgeDot.tsx +11 -0
  189. package/src/libs/Badge/BadgeRibbon.tsx +122 -0
  190. package/src/libs/Badge/Shape.tsx +29 -0
  191. package/src/libs/Badge/index.tsx +7 -0
  192. package/src/libs/Badge/package.json +16 -0
  193. package/src/libs/Badge/publish.sh +18 -0
  194. package/src/libs/Badge/styles.ts +55 -0
  195. package/src/libs/Badge/types.ts +63 -0
  196. package/src/libs/Calendar/CalendarPro.tsx +307 -0
  197. package/src/libs/Calendar/Day.tsx +150 -0
  198. package/src/libs/Calendar/HeaderControl.tsx +55 -0
  199. package/src/libs/Calendar/LunarDateConverter.ts +228 -0
  200. package/src/libs/Calendar/LunarService.ts +206 -0
  201. package/src/libs/Calendar/Month.tsx +118 -0
  202. package/src/libs/Calendar/MonthList.tsx +226 -0
  203. package/src/libs/Calendar/TabHeader.tsx +91 -0
  204. package/src/libs/Calendar/Util.ts +288 -0
  205. package/src/libs/Calendar/holidayData.ts +118 -0
  206. package/src/libs/Calendar/index.tsx +383 -0
  207. package/src/libs/Calendar/package.json +18 -0
  208. package/src/libs/Calendar/publish.sh +18 -0
  209. package/src/libs/Calendar/styles.ts +122 -0
  210. package/src/libs/Calendar/types.ts +212 -0
  211. package/src/libs/Carousel/animation.ts +62 -0
  212. package/src/libs/Carousel/index.tsx +517 -0
  213. package/src/libs/Carousel/package.json +18 -0
  214. package/src/libs/Carousel/publish.sh +16 -0
  215. package/src/libs/Carousel/types.ts +71 -0
  216. package/src/libs/Chip/index.tsx +164 -0
  217. package/src/libs/Chip/package.json +16 -0
  218. package/src/libs/Chip/publish.sh +16 -0
  219. package/src/libs/Chip/styles.ts +20 -0
  220. package/src/libs/Chip/types.ts +72 -0
  221. package/src/libs/Collapse/index.tsx +305 -0
  222. package/src/libs/Collapse/package.json +16 -0
  223. package/src/libs/Collapse/publish.sh +18 -0
  224. package/src/libs/Collapse/styles.ts +37 -0
  225. package/src/libs/Collapse/types.ts +84 -0
  226. package/src/libs/DateTimePicker/WheelPicker.tsx +163 -0
  227. package/src/libs/DateTimePicker/WheelPickerItem.tsx +58 -0
  228. package/src/libs/DateTimePicker/index.tsx +188 -0
  229. package/src/libs/DateTimePicker/package.json +16 -0
  230. package/src/libs/DateTimePicker/publish.sh +17 -0
  231. package/src/libs/DateTimePicker/styles.ts +31 -0
  232. package/src/libs/DateTimePicker/types.ts +102 -0
  233. package/src/libs/DateTimePicker/utils.ts +114 -0
  234. package/src/libs/Information/index.tsx +129 -0
  235. package/src/libs/Information/package.json +16 -0
  236. package/src/libs/Information/publish.sh +18 -0
  237. package/src/libs/Information/styles.ts +34 -0
  238. package/src/libs/Information/types.ts +79 -0
  239. package/src/libs/Logo/index.tsx +39 -0
  240. package/src/libs/Logo/package.json +17 -0
  241. package/src/libs/Logo/publish.sh +16 -0
  242. package/src/libs/Logo/styles.ts +25 -0
  243. package/src/libs/Logo/types.ts +13 -0
  244. package/src/libs/ProgressInfo/ProgressInfoHorizontal.tsx +128 -0
  245. package/src/libs/ProgressInfo/ProgressInfoIcon.tsx +88 -0
  246. package/src/libs/ProgressInfo/ProgressInfoVertical.tsx +85 -0
  247. package/src/libs/ProgressInfo/index.tsx +22 -0
  248. package/src/libs/ProgressInfo/package.json +16 -0
  249. package/src/libs/ProgressInfo/publish.sh +16 -0
  250. package/src/libs/ProgressInfo/styles.ts +46 -0
  251. package/src/libs/ProgressInfo/types.ts +60 -0
  252. package/src/libs/ProgressInfo/yarn.lock +8 -0
  253. package/src/libs/Rating/index.tsx +74 -0
  254. package/src/libs/Rating/package.json +16 -0
  255. package/src/libs/Rating/publish.sh +18 -0
  256. package/src/libs/Rating/type.ts +25 -0
  257. package/src/libs/Slider/Label.tsx +33 -0
  258. package/src/libs/Slider/helpers.ts +35 -0
  259. package/src/libs/Slider/hooks.tsx +218 -0
  260. package/src/libs/Slider/index.tsx +453 -0
  261. package/src/libs/Slider/package.json +16 -0
  262. package/src/libs/Slider/publish.sh +18 -0
  263. package/src/libs/Slider/styles.ts +36 -0
  264. package/src/libs/Stepper/NumberView.tsx +64 -0
  265. package/src/libs/Stepper/StepperButton.tsx +37 -0
  266. package/src/libs/Stepper/index.tsx +139 -0
  267. package/src/libs/Stepper/package.json +16 -0
  268. package/src/libs/Stepper/publish.sh +17 -0
  269. package/src/libs/Stepper/styles.ts +44 -0
  270. package/src/libs/Stepper/types.ts +154 -0
  271. package/src/libs/Steps/StepIcon.tsx +86 -0
  272. package/src/libs/Steps/StepsHorizontal.tsx +189 -0
  273. package/src/libs/Steps/StepsVertical.tsx +133 -0
  274. package/src/libs/Steps/index.tsx +20 -0
  275. package/src/libs/Steps/package.json +16 -0
  276. package/src/libs/Steps/publish.sh +16 -0
  277. package/src/libs/Steps/styles.ts +46 -0
  278. package/src/libs/Steps/types.ts +159 -0
  279. package/src/libs/Steps/utils.ts +175 -0
  280. package/src/libs/SuggestAction/SuggestActionView.tsx +124 -0
  281. package/src/libs/SuggestAction/index.tsx +3 -0
  282. package/src/libs/SuggestAction/package.json +16 -0
  283. package/src/libs/SuggestAction/publish.sh +16 -0
  284. package/src/libs/SuggestAction/styles.ts +30 -0
  285. package/src/libs/SuggestAction/types.ts +36 -0
  286. package/src/libs/Swipe/SwipeView.tsx +151 -0
  287. package/src/libs/Swipe/index.tsx +5 -0
  288. package/src/libs/Swipe/package.json +16 -0
  289. package/src/libs/Swipe/publish.sh +16 -0
  290. package/src/libs/Swipe/styles.ts +16 -0
  291. package/src/libs/Swipe/types.ts +109 -0
  292. package/src/libs/TabView/assets/Path.tsx +29 -0
  293. package/src/libs/TabView/index.tsx +184 -0
  294. package/src/libs/TabView/package.json +16 -0
  295. package/src/libs/TabView/publish.sh +16 -0
  296. package/src/libs/TabView/styles.ts +96 -0
  297. package/src/libs/TabView/tabBar/CardTabBar.tsx +137 -0
  298. package/src/libs/TabView/tabBar/SrollableTabBar.tsx +218 -0
  299. package/src/libs/TabView/tabBar/TabBar.tsx +67 -0
  300. package/src/libs/TabView/tabItem/CardTabItem.tsx +118 -0
  301. package/src/libs/TabView/tabItem/TabItem.tsx +180 -0
  302. package/src/libs/TabView/types.ts +166 -0
  303. package/src/libs/Template/HeaderSliderBanner/index.tsx +86 -0
  304. package/src/libs/Template/HeaderSliderBanner/types.ts +16 -0
  305. package/src/libs/Template/TrustBanner/CustomAvatar.tsx +39 -0
  306. package/src/libs/Template/TrustBanner/index.tsx +161 -0
  307. package/src/libs/Template/TrustBanner/styles.ts +48 -0
  308. package/src/libs/Template/TrustBanner/types.ts +50 -0
  309. package/src/libs/Template/index.tsx +4 -0
  310. package/src/libs/Template/package.json +18 -0
  311. package/src/libs/Template/publish.sh +17 -0
  312. package/src/libs/Title/index.tsx +284 -0
  313. package/src/libs/Title/package.json +17 -0
  314. package/src/libs/Title/publish.sh +16 -0
  315. package/src/libs/Title/styles.ts +54 -0
  316. package/src/libs/Title/types.ts +21 -0
  317. package/src/libs/Tooltip/TooltipButtons.tsx +54 -0
  318. package/src/libs/Tooltip/index.tsx +608 -0
  319. package/src/libs/Tooltip/package.json +16 -0
  320. package/src/libs/Tooltip/publish.sh +18 -0
  321. package/src/libs/Tooltip/styles.ts +70 -0
  322. package/src/libs/Tooltip/types.ts +61 -0
  323. package/src/libs/Uploader/index.tsx +87 -0
  324. package/src/libs/Uploader/package.json +17 -0
  325. package/src/libs/Uploader/publish.sh +18 -0
  326. package/src/libs/Uploader/styles.ts +30 -0
  327. package/src/libs/Uploader/types.ts +69 -0
  328. package/src/native/MoMoNative.podspec +18 -0
  329. package/src/native/calculator/android/build.gradle +61 -0
  330. package/src/native/calculator/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  331. package/src/native/calculator/android/gradle/wrapper/gradle-wrapper.properties +6 -0
  332. package/src/native/calculator/android/gradlew +172 -0
  333. package/src/native/calculator/android/gradlew.bat +84 -0
  334. package/src/native/calculator/android/src/main/AndroidManifest.xml +5 -0
  335. package/src/native/calculator/android/src/main/java/com/calculator/KeyboardViewModule.java +22 -0
  336. package/src/native/calculator/android/src/main/java/com/calculator/KeyboardViewPackage.java +35 -0
  337. package/src/native/calculator/android/src/main/java/com/calculator/modules/CalculatorKeyboardModule.java +157 -0
  338. package/src/native/calculator/android/src/main/java/com/calculator/views/calculatorkeyboard/CalculatorEditText.java +36 -0
  339. package/src/native/calculator/android/src/main/java/com/calculator/views/calculatorkeyboard/FixedRelativeLayout.java +45 -0
  340. package/src/native/calculator/android/src/main/java/com/calculator/views/calculatorkeyboard/MomoTextInputCalculatorManager.java +173 -0
  341. package/src/native/calculator/android/src/main/java/com/calculator/views/customkeyboard/RNCustomKeyboardModule.java +417 -0
  342. package/src/native/calculator/ios/Helper/MomoHelper.swift +16 -0
  343. package/src/native/calculator/ios/KeyboardView-Bridging-Header.h +60 -0
  344. package/src/native/calculator/ios/KeyboardView.h +19 -0
  345. package/src/native/calculator/ios/KeyboardView.m +56 -0
  346. package/src/native/calculator/ios/MomoTextInputCalculator.swift +144 -0
  347. package/src/native/calculator/ios/RNCustomKeyboard/RNCustomKeyboard.h +6 -0
  348. package/src/native/calculator/ios/RNCustomKeyboard/RNCustomKeyboard.m +143 -0
  349. package/src/native/package.json +14 -0
  350. package/src/native/publish.sh +29 -0
  351. package/src/native/resource/android/build.gradle +57 -0
  352. package/src/native/resource/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  353. package/src/native/resource/android/gradle/wrapper/gradle-wrapper.properties +6 -0
  354. package/src/native/resource/android/src/main/AndroidManifest.xml +6 -0
  355. package/src/native/resource/android/src/main/java/com/resource/RNResourceModule.java +90 -0
  356. package/src/native/resource/android/src/main/java/com/resource/RNResourcePackage.java +22 -0
  357. package/src/native/resource/ios/RNResouce.m +71 -0
  358. package/src/native/resource/ios/RNResource.h +5 -0
  359. package/example/ios/Example.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  360. package/example/ios/Example.xcworkspace/xcuserdata/sophia.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  361. package/example/ios/Example.xcworkspace/xcuserdata/sophia.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +0 -6
  362. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +0 -58
  363. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/Pods-Example.xcscheme +0 -58
  364. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/SDWebImage.xcscheme +0 -58
  365. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +0 -58
  366. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/SkeletonUI.xcscheme +0 -58
  367. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/lottie-ios-LottiePrivacyInfo.xcscheme +0 -58
  368. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/lottie-ios.xcscheme +0 -58
  369. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sophia.xcuserdatad/xcschemes/xcschememanagement.plist +0 -46
@@ -8,8 +8,11 @@ import androidx.compose.foundation.interaction.MutableInteractionSource
8
8
  import androidx.compose.foundation.layout.Arrangement
9
9
  import androidx.compose.foundation.layout.Box
10
10
  import androidx.compose.foundation.layout.Column
11
+ import androidx.compose.foundation.layout.IntrinsicSize
11
12
  import androidx.compose.foundation.layout.Row
12
13
  import androidx.compose.foundation.layout.Spacer
14
+ import androidx.compose.foundation.layout.fillMaxWidth
15
+ import androidx.compose.foundation.layout.height
13
16
  import androidx.compose.foundation.layout.offset
14
17
  import androidx.compose.foundation.layout.padding
15
18
  import androidx.compose.foundation.layout.size
@@ -221,7 +224,7 @@ private class TooltipPositionProvider(
221
224
  fun Tooltip(
222
225
  state: TooltipState,
223
226
  title: String? = null,
224
- description: String? = null,
227
+ description: String,
225
228
  buttons: List<TooltipButton> = emptyList(),
226
229
  placement: TooltipPlacement = TooltipPlacement.TOP,
227
230
  align: TooltipAlign = TooltipAlign.CENTER,
@@ -282,6 +285,7 @@ private fun TooltipPopupContent(
282
285
  Column(
283
286
  modifier = Modifier
284
287
  .widthIn(max = tooltipMaxWidth)
288
+ .width(IntrinsicSize.Max)
285
289
  .background(Colors.black_17, tooltipShape)
286
290
  .clip(tooltipShape)
287
291
  .conditional(IsShowBaseLineDebug) {
@@ -289,8 +293,8 @@ private fun TooltipPopupContent(
289
293
  }
290
294
  .padding(Spacing.M)
291
295
  ) {
292
- Row {
293
- Column(modifier = Modifier.weight(1f, fill = false)) {
296
+ Row(Modifier.fillMaxWidth()) {
297
+ Column(modifier = Modifier.weight(1f)) {
294
298
  if (!title.isNullOrEmpty()) {
295
299
  Text(
296
300
  text = title,
@@ -307,7 +311,6 @@ private fun TooltipPopupContent(
307
311
  style = Typography.descriptionDefaultRegular,
308
312
  color = Colors.black_01,
309
313
  maxLines = 2,
310
- modifier = Modifier.padding(bottom = Spacing.M),
311
314
  overflow = TextOverflow.Ellipsis,
312
315
  )
313
316
  }
@@ -330,6 +333,7 @@ private fun TooltipPopupContent(
330
333
  }
331
334
  }
332
335
  if (buttons.isNotEmpty()) {
336
+ Spacer(Modifier.height(Spacing.M))
333
337
  TooltipButtons(
334
338
  buttons = buttons,
335
339
  modifier = Modifier.align(Alignment.End),
@@ -488,6 +492,7 @@ private fun TooltipButtons(buttons: List<TooltipButton>, modifier: Modifier = Mo
488
492
  TooltipSecondaryButton(
489
493
  title = secondary.title ?: "",
490
494
  onPress = secondary.onPress ?: {},
495
+ modifier = Modifier.weight(1f, fill = false),
491
496
  )
492
497
  Spacer(modifier = Modifier.width(Spacing.S))
493
498
  TooltipPrimaryButton(
@@ -520,6 +525,12 @@ private fun TooltipSingleButton(btn: TooltipButton) {
520
525
  )
521
526
  }
522
527
  }
528
+
529
+ private const val MAX_BUTTON_LENGTH = 16
530
+
531
+ private fun String.limitWithEllipsis(max: Int = 16): String {
532
+ return if (length > max) take(max) + "…" else this
533
+ }
523
534
  @Composable
524
535
  private fun TooltipPrimaryButton(
525
536
  title: String,
@@ -527,7 +538,7 @@ private fun TooltipPrimaryButton(
527
538
  ) {
528
539
  Button(
529
540
  onClick = onPress,
530
- title = title,
541
+ title = title.limitWithEllipsis(),
531
542
  type = ButtonType.SECONDARY,
532
543
  size = Size.MEDIUM,
533
544
  isFull = false,
@@ -537,18 +548,21 @@ private fun TooltipPrimaryButton(
537
548
  private fun TooltipSecondaryButton(
538
549
  title: String,
539
550
  onPress: () -> Unit,
551
+ modifier: Modifier = Modifier,
540
552
  ) {
541
553
  Box(
542
- modifier = Modifier
554
+ modifier = modifier
543
555
  .activeOpacityClickable {
544
556
  onPress()
545
557
  }
546
558
  .padding(horizontal = Spacing.M, vertical = Spacing.S),
547
559
  ) {
548
560
  Text(
549
- text = title,
561
+ text = title.limitWithEllipsis(),
550
562
  color = Colors.black_01,
551
563
  style = Typography.actionSBold,
564
+ maxLines = 1,
565
+ overflow = TextOverflow.Ellipsis,
552
566
  )
553
567
  }
554
568
  }
@@ -0,0 +1,192 @@
1
+ package vn.momo.kits.components
2
+
3
+ import androidx.compose.foundation.background
4
+ import androidx.compose.foundation.border
5
+ import androidx.compose.foundation.horizontalScroll
6
+ import androidx.compose.foundation.layout.Arrangement
7
+ import androidx.compose.foundation.layout.Box
8
+ import androidx.compose.foundation.layout.Column
9
+ import androidx.compose.foundation.layout.Row
10
+ import androidx.compose.foundation.layout.fillMaxSize
11
+ import androidx.compose.foundation.layout.padding
12
+ import androidx.compose.foundation.layout.size
13
+ import androidx.compose.foundation.rememberScrollState
14
+ import androidx.compose.foundation.shape.RoundedCornerShape
15
+ import androidx.compose.runtime.Composable
16
+ import androidx.compose.runtime.remember
17
+ import androidx.compose.ui.Alignment
18
+ import androidx.compose.ui.Modifier
19
+ import androidx.compose.ui.draw.clip
20
+ import androidx.compose.ui.draw.drawBehind
21
+ import androidx.compose.ui.geometry.CornerRadius
22
+ import androidx.compose.ui.graphics.Color
23
+ import androidx.compose.ui.graphics.PathEffect
24
+ import androidx.compose.ui.graphics.drawscope.Stroke
25
+ import androidx.compose.ui.unit.Dp
26
+ import androidx.compose.ui.unit.dp
27
+ import vn.momo.kits.application.IsShowBaseLineDebug
28
+ import vn.momo.kits.const.AppTheme
29
+ import vn.momo.kits.const.Colors
30
+ import vn.momo.kits.const.Radius
31
+ import vn.momo.kits.const.Spacing
32
+ import vn.momo.kits.const.Typography
33
+ import vn.momo.kits.modifier.activeOpacityClickable
34
+ import vn.momo.kits.modifier.conditional
35
+
36
+ data class UploadImage(
37
+ val uri: String? = null,
38
+ val loading: Boolean = false,
39
+ )
40
+
41
+ @Composable
42
+ fun Uploader(
43
+ images: List<UploadImage>,
44
+ modifier: Modifier = Modifier,
45
+ numberOfImages: Int = 1,
46
+ disabled: Boolean = false,
47
+ width: Dp = 64.dp,
48
+ height: Dp = 64.dp,
49
+ onAdd: () -> Unit = {},
50
+ onCancel: ((image: UploadImage, index: Int) -> Unit)? = null,
51
+ onPressImage: (image: UploadImage, index: Int) -> Unit = { _, _ -> },
52
+ ) {
53
+ val shouldShowPicker = remember(images.size, numberOfImages) {
54
+ images.size < numberOfImages
55
+ }
56
+
57
+ Row(
58
+ modifier = modifier
59
+ .conditional(IsShowBaseLineDebug) { border(1.dp, Colors.blue_03) },
60
+ horizontalArrangement = Arrangement.spacedBy(Spacing.S),
61
+ verticalAlignment = Alignment.Top,
62
+ ) {
63
+ if (shouldShowPicker) {
64
+ UploaderPickerCell(
65
+ disabled = disabled,
66
+ width = width,
67
+ height = height,
68
+ onAdd = onAdd,
69
+ )
70
+ }
71
+
72
+ Row(
73
+ modifier = Modifier.horizontalScroll(rememberScrollState()),
74
+ horizontalArrangement = Arrangement.spacedBy(Spacing.S),
75
+ ) {
76
+ images.forEachIndexed { index, image ->
77
+ UploaderImageItem(
78
+ image = image,
79
+ width = width,
80
+ height = height,
81
+ index = index,
82
+ onCancel = onCancel,
83
+ onPressImage = { onPressImage(image, index) },
84
+ )
85
+ }
86
+ }
87
+ }
88
+ }
89
+
90
+ @Composable
91
+ private fun UploaderPickerCell(
92
+ disabled: Boolean,
93
+ width: Dp,
94
+ height: Dp,
95
+ onAdd: () -> Unit,
96
+ ) {
97
+ val theme = AppTheme.current
98
+ val mainColor = if (disabled) theme.colors.text.disable else theme.colors.text.hint
99
+ val borderColor = if (disabled) theme.colors.border.disable else theme.colors.border.default
100
+
101
+ Box(
102
+ modifier = Modifier
103
+ .size(width = width, height = height)
104
+ .clip(RoundedCornerShape(Radius.XS))
105
+ .dashedBorder(color = borderColor, radius = Radius.XS)
106
+ .activeOpacityClickable(enabled = !disabled, onClick = onAdd),
107
+ contentAlignment = Alignment.Center,
108
+ ) {
109
+ Column(
110
+ horizontalAlignment = Alignment.CenterHorizontally,
111
+ verticalArrangement = Arrangement.spacedBy(Spacing.XXS),
112
+ ) {
113
+ Icon(
114
+ source = "16_navigation_plus",
115
+ color = mainColor,
116
+ size = 16.dp,
117
+ )
118
+ Text(
119
+ text = "Thêm hình",
120
+ style = Typography.descriptionXsRegular,
121
+ color = mainColor,
122
+ )
123
+ }
124
+ }
125
+ }
126
+
127
+ @Composable
128
+ private fun UploaderImageItem(
129
+ image: UploadImage,
130
+ width: Dp,
131
+ height: Dp,
132
+ index: Int,
133
+ onCancel: ((image: UploadImage, index: Int) -> Unit)?,
134
+ onPressImage: () -> Unit,
135
+ ) {
136
+ Box(
137
+ modifier = Modifier
138
+ .size(width = width, height = height)
139
+ .activeOpacityClickable(onClick = onPressImage),
140
+ ) {
141
+ Image(
142
+ source = image.uri ?: "",
143
+ modifier = Modifier
144
+ .fillMaxSize()
145
+ .clip(RoundedCornerShape(Radius.XS)),
146
+ )
147
+
148
+ if (onCancel != null && !image.loading) {
149
+ Icon(
150
+ source = "navigation_close_circle_full",
151
+ size = 16.dp,
152
+ color = null,
153
+ modifier = Modifier
154
+ .align(Alignment.TopEnd)
155
+ .padding(top = Spacing.XXS, end = Spacing.XXS)
156
+ .activeOpacityClickable { onCancel(image, index) },
157
+ )
158
+ }
159
+
160
+ if (image.loading) {
161
+ Box(
162
+ modifier = Modifier
163
+ .fillMaxSize()
164
+ .clip(RoundedCornerShape(Radius.XS))
165
+ .background(Color(0x66FFFFFF)),
166
+ contentAlignment = Alignment.Center,
167
+ ) {
168
+ Skeleton()
169
+ }
170
+ }
171
+ }
172
+ }
173
+
174
+ private fun Modifier.dashedBorder(
175
+ color: Color,
176
+ radius: Dp,
177
+ strokeWidth: Dp = 1.dp,
178
+ dashWidth: Float = 10f,
179
+ dashGap: Float = 6f,
180
+ ): Modifier = this.drawBehind {
181
+ val strokePx = strokeWidth.toPx()
182
+ val pathEffect = PathEffect.dashPathEffect(floatArrayOf(dashWidth, dashGap), 0f)
183
+ val cornerRadiusPx = radius.toPx()
184
+ drawRoundRect(
185
+ color = color,
186
+ style = Stroke(
187
+ width = strokePx,
188
+ pathEffect = pathEffect,
189
+ ),
190
+ cornerRadius = CornerRadius(cornerRadiusPx, cornerRadiusPx),
191
+ )
192
+ }
package/gradle.properties CHANGED
@@ -18,7 +18,7 @@ kotlin.apple.xcodeCompatibility.nowarn=true
18
18
  name="ComposeKits"
19
19
  group=vn.momo.kits
20
20
  artifact.id=kits
21
- version=0.157.1-beta.9
21
+ version=0.157.1-com.1
22
22
 
23
23
  repo=GitLab
24
24
  url=https://gitlab.mservice.com.vn/api/v4/projects/5400/packages/maven
@@ -311,6 +311,10 @@ private struct SecureInputField: UIViewRepresentable {
311
311
  textField.text = text
312
312
  }
313
313
  textField.isEnabled = !isDisabled
314
+ if textField.keyboardType != keyboardType {
315
+ textField.keyboardType = keyboardType
316
+ textField.reloadInputViews()
317
+ }
314
318
  }
315
319
 
316
320
  class Coordinator: NSObject, UITextFieldDelegate {
package/local.properties CHANGED
@@ -4,5 +4,5 @@
4
4
  # Location of the SDK. This is only used by Gradle.
5
5
  # For customization when using a Version Control System, please read the
6
6
  # header note.
7
- #Thu Jan 09 10:43:10 ICT 2025
8
- sdk.dir=/Users/sophia/Library/Android/sdk
7
+ #Mon Dec 22 10:07:29 ICT 2025
8
+ sdk.dir=/Users/phuc/Library/Android/sdk
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@momo-kits/native-kits",
3
- "version": "0.157.1-beta.9-debug",
3
+ "version": "0.157.1-com.1-debug",
4
4
  "private": false,
5
5
  "dependencies": {},
6
6
  "devDependencies": {},
@@ -0,0 +1,73 @@
1
+ # @momo-kits/doctor
2
+
3
+ > Momo Kits Doctor CLI tool for running health checks on your Mini App to ensure compatibility with the MoMo Platform.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/@momo-kits/doctor.svg)](https://www.npmjs.com/package/@momo-kits/doctor)
6
+ [![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
7
+
8
+ ## Table of Contents
9
+
10
+ - [Installation](#installation)
11
+ - [Usage](#usage)
12
+ - [Check](#check)
13
+ - [Doctor](#doctor)
14
+ - [CLI Options](#cli-options)
15
+
16
+ ## Installation
17
+
18
+ Install globally for CLI use:
19
+
20
+ ```bash
21
+ npm install -g @momo-kits/doctor
22
+ # or
23
+ yarn global add @momo-kits/doctor
24
+ ```
25
+
26
+ Install locally as a dev dependency:
27
+
28
+ ```bash
29
+ npm install --save-dev @momo-kits/doctor
30
+ # or
31
+ yarn add --dev @momo-kits/doctor
32
+ ```
33
+
34
+ ## Usage
35
+
36
+ The CLI provides two core commands:
37
+
38
+ ### Check
39
+
40
+ Run an interactive session to perform individual health checks:
41
+
42
+ ```bash
43
+ momo-kits check
44
+ ```
45
+
46
+ You will be prompted to select one of the following tasks:
47
+
48
+ - **Check core dependencies**: Verify usage of `@momo-kits/core`.
49
+ - **Scan native module usage**: Detect any native module imports or calls.
50
+ - **Calculate component adoption rate**: Analyze how many components used in Design System.
51
+ - **Scan for deprecated MaxAPI functions**: Identify MaxAPI calls that are removed or deprecated.
52
+
53
+ ### Doctor
54
+
55
+ Run all checks in sequence and receive a final health summary:
56
+
57
+ ```bash
58
+ momo-kits doctor
59
+ ```
60
+
61
+ The tool will:
62
+
63
+ 1. Check core dependencies
64
+ 2. Scan native module usage
65
+ 3. Calculate component adoption rate
66
+ 4. Scan for deprecated MaxAPI usage
67
+ 5. Output a summary indicating overall app health
68
+
69
+ ## CLI Options
70
+
71
+ - `--help` Show help information
72
+ - `--version` Display the current CLI version
73
+ - `LOG_LEVEL` Set log verbosity (`debug`, `info`, `warn`, `error`)