@momo-kits/native-kits 0.0.1-beta.5 → 0.0.2-alpha.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 (653) hide show
  1. package/CLAUDE.md +99 -0
  2. package/PUBLISH_GUIDE.md +675 -0
  3. package/README.md +184 -5
  4. package/build.gradle.kts +11 -0
  5. package/compose/build.gradle.kts +189 -0
  6. package/compose/build.gradle.kts.backup +189 -0
  7. package/compose/compose.podspec +47 -0
  8. package/compose/src/androidMain/kotlin/vn/momo/kits/const/HostFont.android.kt +19 -0
  9. package/compose/src/androidMain/kotlin/vn/momo/kits/navigation/ScrollToTop.android.kt +6 -0
  10. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/BackGesture.android.kt +12 -0
  11. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/OsFontScale.android.kt +7 -0
  12. package/compose/src/androidMain/kotlin/vn/momo/kits/platform/Platform.android.kt +151 -0
  13. package/compose/src/commonMain/kotlin/vn/momo/kits/application/AnimationSearchInput.kt +52 -0
  14. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Context.kt +124 -0
  15. package/compose/src/commonMain/kotlin/vn/momo/kits/application/FloatingButton.kt +183 -0
  16. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Header.kt +207 -0
  17. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderAnimated.kt +39 -0
  18. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderBackground.kt +86 -0
  19. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderDefault.kt +76 -0
  20. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderExtended.kt +76 -0
  21. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderRight.kt +293 -0
  22. package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderTitle.kt +33 -0
  23. package/compose/src/commonMain/kotlin/vn/momo/kits/application/LiteScreen.kt +831 -0
  24. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Localize.kt +269 -0
  25. package/compose/src/commonMain/kotlin/vn/momo/kits/application/NavigationContainer.kt +110 -0
  26. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Screen.kt +378 -0
  27. package/compose/src/commonMain/kotlin/vn/momo/kits/application/WidgetContainer.kt +65 -0
  28. package/compose/src/commonMain/kotlin/vn/momo/kits/application/useHeaderSearchAnimation.kt +69 -0
  29. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Avatar.kt +157 -0
  30. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Badge.kt +82 -0
  31. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeDot.kt +32 -0
  32. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeRibbon.kt +338 -0
  33. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BaselineView.kt +175 -0
  34. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Button.kt +356 -0
  35. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Carousel.kt +113 -0
  36. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CheckBox.kt +89 -0
  37. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Chip.kt +128 -0
  38. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Collapse.kt +209 -0
  39. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CupertinoOverscroll.kt +542 -0
  40. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Divider.kt +49 -0
  41. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Icon.kt +86 -0
  42. package/compose/src/commonMain/kotlin/vn/momo/kits/components/IconButton.kt +125 -0
  43. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Image.kt +231 -0
  44. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Information.kt +189 -0
  45. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Input.kt +475 -0
  46. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputDropDown.kt +114 -0
  47. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputMoney.kt +266 -0
  48. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputOTP.kt +240 -0
  49. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputPhoneNumber.kt +223 -0
  50. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputSearch.kt +264 -0
  51. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputTextArea.kt +185 -0
  52. package/compose/src/commonMain/kotlin/vn/momo/kits/components/LazyColumnWithBouncing.kt +343 -0
  53. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Loader.kt +108 -0
  54. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationDot.kt +56 -0
  55. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationNumber.kt +41 -0
  56. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationScroll.kt +84 -0
  57. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationWhiteDot.kt +40 -0
  58. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupNotify.kt +328 -0
  59. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupPromotion.kt +97 -0
  60. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ProgressInfo.kt +310 -0
  61. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Radio.kt +59 -0
  62. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Rating.kt +87 -0
  63. package/compose/src/commonMain/kotlin/vn/momo/kits/components/ScaleSizeScope.kt +21 -0
  64. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Skeleton.kt +90 -0
  65. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Slider.kt +323 -0
  66. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Stepper.kt +220 -0
  67. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Steps.kt +473 -0
  68. package/compose/src/commonMain/kotlin/vn/momo/kits/components/SuggestAction.kt +122 -0
  69. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Swipe.kt +199 -0
  70. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Switch.kt +91 -0
  71. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TabView.kt +552 -0
  72. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tag.kt +88 -0
  73. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Text.kt +125 -0
  74. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Title.kt +207 -0
  75. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tooltip.kt +498 -0
  76. package/compose/src/commonMain/kotlin/vn/momo/kits/components/TrustBanner.kt +176 -0
  77. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Uploader.kt +182 -0
  78. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePicker.kt +193 -0
  79. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerTypes.kt +29 -0
  80. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerUtils.kt +234 -0
  81. package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/WheelPicker.kt +188 -0
  82. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Colors.kt +325 -0
  83. package/compose/src/commonMain/kotlin/vn/momo/kits/const/HostFont.kt +16 -0
  84. package/compose/src/commonMain/kotlin/vn/momo/kits/const/KitDesignSystem.kt +18 -0
  85. package/compose/src/commonMain/kotlin/vn/momo/kits/const/KitFontScale.kt +22 -0
  86. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Radius.kt +12 -0
  87. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Spacing.kt +16 -0
  88. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Theme.kt +194 -0
  89. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Typography.kt +282 -0
  90. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Card.kt +54 -0
  91. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Item.kt +51 -0
  92. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Section.kt +41 -0
  93. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/AutomationId.kt +52 -0
  94. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Clickable.kt +66 -0
  95. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Conditional.kt +11 -0
  96. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/DeprecatedModifier.kt +104 -0
  97. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Shadow.kt +48 -0
  98. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Size.kt +51 -0
  99. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/BottomSheet.kt +299 -0
  100. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/HostBackGestureBridge.kt +58 -0
  101. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ModalScreen.kt +129 -0
  102. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigation.kt +106 -0
  103. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/NavigationContainer.kt +211 -0
  104. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigator.kt +398 -0
  105. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ScrollToTop.kt +8 -0
  106. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackScreen.kt +595 -0
  107. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackTransition.kt +148 -0
  108. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/SwipeBackHaptic.kt +40 -0
  109. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTab.kt +184 -0
  110. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTabBar.kt +225 -0
  111. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/CurvedContainer.kt +86 -0
  112. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/FloatingButton.kt +169 -0
  113. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/Header.kt +357 -0
  114. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderBackground.kt +83 -0
  115. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderJourney.kt +106 -0
  116. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderLocation.kt +75 -0
  117. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderRight.kt +326 -0
  118. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderTitle.kt +39 -0
  119. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderUser.kt +364 -0
  120. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/SnackBar.kt +132 -0
  121. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/ToolkitRequests.kt +33 -0
  122. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/tracking/ScreenTracker.kt +135 -0
  123. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/BackGesture.kt +12 -0
  124. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/ComposeLottieAnimation.kt +91 -0
  125. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/OsFontScale.kt +9 -0
  126. package/compose/src/commonMain/kotlin/vn/momo/kits/platform/Platform.kt +71 -0
  127. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Icons.kt +1329 -0
  128. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Resources.kt +55 -0
  129. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Tracking.kt +15 -0
  130. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Utils.kt +105 -0
  131. package/compose/src/commonTest/kotlin/vn/momo/kits/navigation/component/ToolkitRequestsTest.kt +47 -0
  132. package/compose/src/iosMain/kotlin/vn/momo/kits/const/HostFont.ios.kt +40 -0
  133. package/compose/src/iosMain/kotlin/vn/momo/kits/navigation/HostBackGesture.ios.kt +45 -0
  134. package/compose/src/iosMain/kotlin/vn/momo/kits/navigation/ScrollToTop.ios.kt +36 -0
  135. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/BackGesture.ios.kt +38 -0
  136. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/OsFontScale.ios.kt +66 -0
  137. package/compose/src/iosMain/kotlin/vn/momo/kits/platform/Platform.ios.kt +213 -0
  138. package/gradle/libs.versions.toml +71 -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/ios/Application/ApplicationEnvironment.swift +71 -0
  145. package/ios/Application/Components.swift +270 -0
  146. package/ios/Application/ComposeApi.swift +22 -0
  147. package/ios/Application/FloatingButton.swift +174 -0
  148. package/ios/Application/HeaderRight.swift +306 -0
  149. package/ios/Application/LanguageSource.swift +93 -0
  150. package/ios/Application/Localize.swift +378 -0
  151. package/ios/Application/LocalizeModifier.swift +30 -0
  152. package/ios/Application/MaxApi.swift +18 -0
  153. package/ios/Application/Navigation/BottomTab/BottomTab.swift +104 -0
  154. package/ios/Application/Navigation/BottomTab/BottomTabBar.swift +215 -0
  155. package/ios/Application/Navigation/BottomTab/CurvedContainer.swift +65 -0
  156. package/ios/Application/Navigation/HeaderBackProps.swift +66 -0
  157. package/ios/Application/Navigation/HeaderTitle.swift +57 -0
  158. package/ios/Application/Navigation/HeaderUser.swift +209 -0
  159. package/ios/Application/Navigation/NavigationContainer.swift +213 -0
  160. package/ios/Application/Navigation/NavigationOptions.swift +109 -0
  161. package/ios/Application/Navigation/Navigator.swift +453 -0
  162. package/ios/Application/Navigation/NavigatorManager.swift +22 -0
  163. package/ios/Application/Navigation/Overplay/BottomSheet.swift +256 -0
  164. package/ios/Application/Navigation/Overplay/ModalScreen.swift +74 -0
  165. package/ios/Application/Navigation/Overplay/SnackBar.swift +144 -0
  166. package/ios/Application/Navigation/Tracking/ScreenTracker.swift +117 -0
  167. package/ios/Application/Navigation/component/Header.swift +178 -0
  168. package/ios/Application/Navigation/component/HeaderBackground.swift +83 -0
  169. package/ios/Application/Navigation/component/HeaderColor.swift +65 -0
  170. package/ios/Application/Navigation/component/HeaderRightWidthKey.swift +11 -0
  171. package/ios/Application/Navigation/component/NavigationFooter.swift +90 -0
  172. package/ios/Application/Navigation/component/NavigationHeaderRight.swift +196 -0
  173. package/ios/Application/Screen.swift +250 -0
  174. package/ios/Application/StackScreen.swift +492 -0
  175. package/ios/Avatar/Avatar.swift +193 -0
  176. package/ios/Badge/Badge.swift +84 -0
  177. package/ios/Badge/BadgeDot.swift +31 -0
  178. package/ios/Badge/BadgeRibbon.swift +319 -0
  179. package/ios/BaselineView/BaselineView.swift +163 -0
  180. package/ios/Button/Button.swift +232 -84
  181. package/ios/CalculatorKeyboard/CalculatorKeyboard.swift +126 -0
  182. package/ios/Carousel/Carousel.swift +196 -0
  183. package/ios/Checkbox/Checkbox.swift +59 -20
  184. package/ios/Chip/Chip.swift +120 -0
  185. package/ios/Collapse/Collapse.swift +192 -0
  186. package/ios/Colors+Radius+Spacing/Colors.swift +42 -37
  187. package/ios/Colors+Radius+Spacing/Spacing.swift +3 -1
  188. package/ios/Colors+Radius+Spacing/Theme.swift +295 -0
  189. package/ios/DateTimePicker/DateTimePicker.swift +212 -0
  190. package/ios/DateTimePicker/DateTimePickerTypes.swift +55 -0
  191. package/ios/DateTimePicker/DateTimePickerUtils.swift +167 -0
  192. package/ios/DateTimePicker/WheelPicker.swift +165 -0
  193. package/ios/Divider/Divider.swift +16 -0
  194. package/ios/Extensions/ActiveOpacityButtonStyle.swift +14 -0
  195. package/ios/Extensions/Color++.swift +32 -0
  196. package/ios/Icon/Icon.swift +69 -0
  197. package/ios/IconButton/IconButton.swift +140 -0
  198. package/ios/Image/Image.swift +36 -9
  199. package/ios/Information/Information.swift +156 -0
  200. package/ios/Input/ErrorView.swift +58 -0
  201. package/ios/Input/Input.swift +455 -121
  202. package/ios/Input/InputPhoneNumber.swift +192 -0
  203. package/ios/Input/InputSearch.swift +301 -0
  204. package/ios/Input/InputTextArea.swift +318 -0
  205. package/ios/InputDropDown/InputDropDown.swift +201 -0
  206. package/ios/InputMoney/InputMoney.swift +405 -0
  207. package/ios/InputOTP/InputOTP.swift +211 -0
  208. package/ios/Layout/GridContext.swift +30 -0
  209. package/ios/Layout/Item.swift +42 -0
  210. package/ios/Layout/Section.swift +134 -0
  211. package/ios/Loader/Loader.swift +113 -0
  212. package/ios/Lottie/LottieView.swift +86 -0
  213. package/ios/MoMoUIKits.podspec +5 -0
  214. package/ios/OTPKeyboard/KeyboardButton.swift +13 -5
  215. package/ios/Pagination/PaginationDot.swift +61 -0
  216. package/ios/Pagination/PaginationNumber.swift +35 -0
  217. package/ios/Pagination/PaginationScroll.swift +101 -0
  218. package/ios/Pagination/PaginationWhiteDot.swift +37 -0
  219. package/ios/Popup/PopupDisplay.swift +195 -94
  220. package/ios/Popup/PopupInput.swift +92 -0
  221. package/ios/Popup/PopupNotify.swift +219 -0
  222. package/ios/Popup/PopupPromotion.swift +74 -0
  223. package/ios/ProgressInfo/ProgressInfo.swift +297 -0
  224. package/ios/Radio/Radio.swift +69 -0
  225. package/ios/Rating/Rating.swift +83 -0
  226. package/{example/ios/Example/Preview Content/Preview Assets.xcassets/Contents.json → ios/Resources/MoMoUIKitsColors.xcassets/AccentColor.colorset/Contents.json} +5 -0
  227. package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Text.colorset/Contents.json +3 -3
  228. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/Contents.json +9 -0
  229. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-default.colorset/Contents.json +38 -0
  230. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-disable.colorset/Contents.json +38 -0
  231. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-pressed.colorset/Contents.json +38 -0
  232. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-selected.colorset/Contents.json +38 -0
  233. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-surface.colorset/Contents.json +38 -0
  234. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/background-tonal.colorset/Contents.json +38 -0
  235. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/border-default.colorset/Contents.json +38 -0
  236. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/border-disable.colorset/Contents.json +38 -0
  237. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/gradient.colorset/Contents.json +38 -0
  238. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/primary.colorset/Contents.json +38 -0
  239. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/secondary.colorset/Contents.json +38 -0
  240. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/success-container.colorset/Contents.json +38 -0
  241. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/success-primary.colorset/Contents.json +38 -0
  242. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/success-secondary.colorset/Contents.json +38 -0
  243. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/text-default.colorset/Contents.json +38 -0
  244. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/text-disable.colorset/Contents.json +38 -0
  245. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/text-hint.colorset/Contents.json +38 -0
  246. package/ios/Resources/MoMoUIKitsColors.xcassets/ThemeColors/text-secondary.colorset/Contents.json +38 -0
  247. package/ios/ScrollIndicator/ScrollIndicator.swift +110 -0
  248. package/ios/Skeleton/Skeleton.swift +99 -0
  249. package/ios/Slider/Slider.swift +237 -0
  250. package/ios/StatusBarTap/StatusBarTap.h +13 -0
  251. package/ios/StatusBarTap/StatusBarTap.m +75 -0
  252. package/ios/Stepper/Stepper.swift +221 -0
  253. package/ios/Steps/Steps.swift +467 -0
  254. package/ios/SuggestAction/SuggestAction.swift +100 -0
  255. package/ios/Swipeable/SwipeCell.swift +226 -31
  256. package/ios/Swipeable/SwipeCellModel.swift +21 -0
  257. package/ios/Switch/Switch.swift +53 -28
  258. package/ios/TabView/TabView.swift +534 -0
  259. package/ios/Tag/Tag.swift +99 -0
  260. package/ios/Template/Logo/Logo.swift +75 -0
  261. package/ios/Template/TrustBanner/TrustBanner.swift +123 -0
  262. package/ios/Title/Title.swift +270 -0
  263. package/ios/Tooltip/Tooltip.swift +486 -0
  264. package/ios/Typography/FontScale.swift +103 -0
  265. package/ios/Typography/FontScaleStore.swift +58 -0
  266. package/ios/Typography/KitDesignSystem.swift +17 -0
  267. package/ios/Typography/Text.swift +262 -0
  268. package/ios/Typography/Typography.swift +80 -23
  269. package/ios/Uploader/Uploader.swift +174 -0
  270. package/ios/native-kits.podspec +73 -15
  271. package/ios-demo/MoMoUIKitsDemo.podspec +20 -0
  272. package/ios-demo/README.md +120 -0
  273. package/ios-demo/Resources/dot_loading.json +558 -0
  274. package/ios-demo/Resources/icon.json +4052 -0
  275. package/ios-demo/Resources/lottie_circle_loader.json +1 -0
  276. package/ios-demo/Sources/MoMoUIKitsDemo/DemoScaffold.swift +48 -0
  277. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsBadgeDemoView.swift +25 -0
  278. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsButtonDemoView.swift +26 -0
  279. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsCheckboxDemoView.swift +19 -0
  280. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsChipDemoView.swift +33 -0
  281. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsInputDemoView.swift +48 -0
  282. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsPopupDemoView.swift +21 -0
  283. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsRadioDemoView.swift +17 -0
  284. package/ios-demo/Sources/MoMoUIKitsDemo/Demos/UIKitsTypographyDemoView.swift +28 -0
  285. package/ios-demo/Sources/MoMoUIKitsDemo/MoMoUIKitsDemoContext.swift +31 -0
  286. package/ios-demo/Sources/MoMoUIKitsDemo/MoMoUIKitsDemoFactory.swift +24 -0
  287. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/AnimatedHeaderDemo.swift +110 -0
  288. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/AvatarDemo.swift +107 -0
  289. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/BadgeDemo.swift +75 -0
  290. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/BaselineView.swift +117 -0
  291. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/BottomTabDemo.swift +89 -0
  292. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ButtonDemo.swift +108 -0
  293. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/CarouselDemo.swift +96 -0
  294. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/CheckboxDemo.swift +60 -0
  295. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ChipDemo.swift +76 -0
  296. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/CollapseDemo.swift +102 -0
  297. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ContentView.swift +107 -0
  298. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/DateTimePickerDemo.swift +100 -0
  299. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/DemoScreen.swift +420 -0
  300. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/DividerDemo.swift +56 -0
  301. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/HeaderUserDemo.swift +49 -0
  302. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/Home.swift +276 -0
  303. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/IconButtonDemo.swift +93 -0
  304. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/IconDemo.swift +81 -0
  305. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ImageDemo.swift +65 -0
  306. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InformationDemo.swift +96 -0
  307. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputDemo.swift +117 -0
  308. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputDropDownDemo.swift +94 -0
  309. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputMoneyDemo.swift +94 -0
  310. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputOTPDemo.swift +88 -0
  311. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputPhoneNumberDemo.swift +120 -0
  312. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputSearchDemo.swift +85 -0
  313. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/InputTextAreaDemo.swift +87 -0
  314. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/LoaderDemo.swift +73 -0
  315. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/LocalizeDemo.swift +235 -0
  316. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/NavigationDemo.swift +241 -0
  317. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/PaginationDemo.swift +68 -0
  318. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/PlaygroundData.swift +76 -0
  319. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/PopupDisplayDemo.swift +175 -0
  320. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/PopupNotifyDemo.swift +95 -0
  321. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/PopupPromotionDemo.swift +67 -0
  322. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ProgressInfoDemo.swift +101 -0
  323. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/RadioDemo.swift +64 -0
  324. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/RatingDemo.swift +68 -0
  325. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SectionDemo.swift +83 -0
  326. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SkeletonDemo.swift +61 -0
  327. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SliderDemo.swift +90 -0
  328. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SnackBarDemo.swift +82 -0
  329. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/StepperDemo.swift +93 -0
  330. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/StepsDemo.swift +114 -0
  331. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SuggestActionDemo.swift +90 -0
  332. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SwipeDemo.swift +107 -0
  333. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/SwitchDemo.swift +58 -0
  334. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/TabViewDemo.swift +114 -0
  335. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/TagDemo.swift +86 -0
  336. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/ThemeDemo.swift +181 -0
  337. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/TitleDemo.swift +104 -0
  338. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/TooltipDemo.swift +118 -0
  339. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/TypographyDemo.swift +87 -0
  340. package/ios-demo/Sources/MoMoUIKitsDemo/SampleDemos/UploaderDemo.swift +85 -0
  341. package/ios-demo/Sources/MoMoUIKitsDemo/SwiftUIDemoBrowserView.swift +53 -0
  342. package/ios-demo/Sources/MoMoUIKitsDemo/UIKitsDemoModels.swift +15 -0
  343. package/ios-demo/Sources/MoMoUIKitsDemo/UIKitsDemoRegistry.swift +73 -0
  344. package/package.json +6 -6
  345. package/publish.sh +554 -20
  346. package/scripts/gen-ios-color.mjs +136 -0
  347. package/settings.gradle.kts +64 -0
  348. package/CODE_OF_CONDUCT.md +0 -133
  349. package/CONTRIBUTING.md +0 -114
  350. package/LICENSE +0 -20
  351. package/android/build.gradle +0 -82
  352. package/android/gradle.properties +0 -5
  353. package/android/src/main/AndroidManifest.xml +0 -4
  354. package/android/src/main/java/com/momoplatform/nativekits/NativeKitsPackage.kt +0 -17
  355. package/android/src/main/java/com/momoplatform/nativekits/NativeKitsViewManager.kt +0 -20
  356. package/example/ios/Example/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -63
  357. package/example/ios/Example/ComponentDetail.swift +0 -35
  358. package/example/ios/Example/ComponentItem.swift +0 -24
  359. package/example/ios/Example/ComponentModel.swift +0 -38
  360. package/example/ios/Example/ContentView.swift +0 -39
  361. package/example/ios/Example/Example.entitlements +0 -10
  362. package/example/ios/Example/Foundation/ButtonDemo.swift +0 -80
  363. package/example/ios/Example/Foundation/ImageDemo.swift +0 -43
  364. package/example/ios/Example/Foundation/Popup/ActionSheets.swift +0 -136
  365. package/example/ios/Example/Foundation/Popup/Floats.swift +0 -127
  366. package/example/ios/Example/Foundation/Popup/Popups.swift +0 -51
  367. package/example/ios/Example/Foundation/PopupDemo.swift +0 -389
  368. package/example/ios/Example/Foundation/TextInputDemo.swift +0 -36
  369. package/example/ios/Example/Foundation/TypographyDemo.swift +0 -53
  370. package/example/ios/Example/Foundation.swift +0 -26
  371. package/example/ios/Example/Info.plist +0 -18
  372. package/example/ios/Example/Library/CheckboxDemo.swift +0 -19
  373. package/example/ios/Example/Library/SwipeableDemo.swift +0 -105
  374. package/example/ios/Example/Library/SwitchDemo.swift +0 -19
  375. package/example/ios/Example/Library.swift +0 -26
  376. package/example/ios/Example/Main.swift +0 -27
  377. package/example/ios/Example/Overview.swift +0 -20
  378. package/example/ios/Example/Resource/SFProText-Black.ttf +0 -0
  379. package/example/ios/Example/Resource/SFProText-Bold.ttf +0 -0
  380. package/example/ios/Example/Resource/SFProText-Heavy.ttf +0 -0
  381. package/example/ios/Example/Resource/SFProText-Light.ttf +0 -0
  382. package/example/ios/Example/Resource/SFProText-Medium.ttf +0 -0
  383. package/example/ios/Example/Resource/SFProText-Regular.ttf +0 -0
  384. package/example/ios/Example/Resource/SFProText-Semibold.ttf +0 -0
  385. package/example/ios/Example/Resource/SFProText-Thin.ttf +0 -0
  386. package/example/ios/Example/Resource/SFProText-Ultralight.ttf +0 -0
  387. package/example/ios/Example/Resource/foundation.json +0 -33
  388. package/example/ios/Example/Resource/library.json +0 -18
  389. package/example/ios/Example/Utils.swift +0 -30
  390. package/example/ios/Example/ViewModifier/DarkViewModifier.swift +0 -22
  391. package/example/ios/Example.xcodeproj/project.pbxproj +0 -581
  392. package/example/ios/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  393. package/example/ios/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  394. package/example/ios/Example.xcodeproj/project.xcworkspace/xcuserdata/wem.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  395. package/example/ios/Example.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  396. package/example/ios/Example.xcworkspace/contents.xcworkspacedata +0 -10
  397. package/example/ios/Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  398. package/example/ios/Example.xcworkspace/xcuserdata/wem.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  399. package/example/ios/Example.xcworkspace/xcuserdata/wem.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +0 -6
  400. package/example/ios/Podfile +0 -7
  401. package/example/ios/Podfile.lock +0 -35
  402. package/example/ios/Pods/Local Podspecs/MoMoUIKits.podspec.json +0 -37
  403. package/example/ios/Pods/Manifest.lock +0 -35
  404. package/example/ios/Pods/Pods.xcodeproj/project.pbxproj +0 -2047
  405. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +0 -58
  406. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/Pods-Example.xcscheme +0 -58
  407. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImage.xcscheme +0 -58
  408. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +0 -58
  409. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SkeletonUI.xcscheme +0 -58
  410. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +0 -46
  411. package/example/ios/Pods/SDWebImage/LICENSE +0 -20
  412. package/example/ios/Pods/SDWebImage/README.md +0 -352
  413. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.h +0 -340
  414. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.m +0 -172
  415. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.h +0 -63
  416. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.m +0 -165
  417. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.h +0 -67
  418. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.m +0 -120
  419. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.h +0 -114
  420. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.m +0 -392
  421. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.h +0 -112
  422. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.m +0 -420
  423. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.h +0 -23
  424. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.m +0 -133
  425. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.h +0 -168
  426. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.m +0 -79
  427. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.h +0 -110
  428. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.m +0 -540
  429. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.h +0 -145
  430. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.m +0 -326
  431. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.h +0 -73
  432. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.m +0 -256
  433. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.h +0 -19
  434. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.m +0 -58
  435. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.h +0 -23
  436. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.m +0 -98
  437. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.h +0 -450
  438. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.m +0 -1030
  439. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.h +0 -153
  440. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.m +0 -68
  441. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.h +0 -156
  442. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.m +0 -138
  443. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.h +0 -81
  444. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.m +0 -556
  445. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.h +0 -297
  446. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.m +0 -26
  447. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.h +0 -153
  448. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.m +0 -822
  449. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.h +0 -58
  450. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.m +0 -130
  451. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.h +0 -36
  452. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.m +0 -28
  453. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.h +0 -22
  454. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.m +0 -58
  455. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.h +0 -28
  456. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.m +0 -127
  457. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.h +0 -25
  458. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.m +0 -101
  459. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.h +0 -58
  460. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.m +0 -807
  461. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.h +0 -30
  462. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.m +0 -420
  463. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.h +0 -146
  464. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.m +0 -170
  465. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.h +0 -40
  466. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.m +0 -123
  467. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.h +0 -241
  468. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.m +0 -331
  469. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.h +0 -78
  470. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.m +0 -158
  471. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.h +0 -32
  472. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.m +0 -39
  473. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.h +0 -36
  474. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.m +0 -39
  475. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.h +0 -95
  476. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.m +0 -17
  477. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.h +0 -352
  478. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.m +0 -149
  479. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.h +0 -314
  480. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.m +0 -658
  481. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.h +0 -113
  482. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.m +0 -60
  483. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.h +0 -49
  484. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.m +0 -55
  485. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.h +0 -191
  486. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.m +0 -722
  487. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.h +0 -69
  488. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.m +0 -71
  489. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.h +0 -69
  490. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.m +0 -73
  491. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.h +0 -32
  492. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.m +0 -16
  493. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.h +0 -115
  494. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.m +0 -275
  495. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.h +0 -290
  496. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.m +0 -775
  497. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.h +0 -27
  498. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.m +0 -14
  499. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.h +0 -72
  500. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.m +0 -59
  501. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.h +0 -143
  502. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.m +0 -303
  503. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.h +0 -131
  504. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.m +0 -194
  505. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.h +0 -387
  506. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.m +0 -234
  507. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.h +0 -24
  508. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.m +0 -23
  509. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.h +0 -46
  510. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.m +0 -60
  511. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.h +0 -26
  512. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.m +0 -22
  513. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.h +0 -27
  514. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.m +0 -47
  515. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.h +0 -89
  516. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.m +0 -221
  517. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.h +0 -80
  518. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.m +0 -47
  519. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.h +0 -146
  520. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.m +0 -824
  521. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.h +0 -129
  522. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.m +0 -76
  523. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.h +0 -194
  524. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.m +0 -67
  525. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.h +0 -110
  526. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.m +0 -446
  527. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.h +0 -48
  528. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.m +0 -82
  529. package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.h +0 -24
  530. package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.m +0 -42
  531. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.h +0 -14
  532. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.m +0 -29
  533. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.h +0 -21
  534. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.m +0 -92
  535. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.h +0 -18
  536. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.m +0 -32
  537. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.h +0 -29
  538. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.m +0 -227
  539. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.h +0 -19
  540. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.m +0 -127
  541. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.h +0 -23
  542. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.m +0 -164
  543. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.h +0 -21
  544. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.m +0 -83
  545. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageIOAnimatedCoderInternal.h +0 -39
  546. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.h +0 -122
  547. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.m +0 -13
  548. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.h +0 -20
  549. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.m +0 -79
  550. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWebImageTransitionInternal.h +0 -19
  551. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDmetamacros.h +0 -667
  552. package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.h +0 -18
  553. package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.m +0 -42
  554. package/example/ios/Pods/SDWebImage/WebImage/SDWebImage.h +0 -89
  555. package/example/ios/Pods/SDWebImageSwiftUI/LICENSE +0 -19
  556. package/example/ios/Pods/SDWebImageSwiftUI/README.md +0 -690
  557. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/AnimatedImage.swift +0 -870
  558. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Backport.swift +0 -59
  559. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/OnChange.swift +0 -52
  560. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Overlay.swift +0 -124
  561. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/StateObject.swift +0 -151
  562. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Image.swift +0 -78
  563. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageManager.swift +0 -132
  564. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImagePlayer.swift +0 -122
  565. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageViewWrapper.swift +0 -133
  566. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ActivityIndicator.swift +0 -82
  567. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/Indicator.swift +0 -97
  568. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ProgressIndicator.swift +0 -114
  569. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SDWebImageSwiftUI.swift +0 -64
  570. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SwiftUICompatibility.swift +0 -92
  571. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Transition/Transition.swift +0 -93
  572. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/WebImage.swift +0 -509
  573. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Module/SDWebImageSwiftUI.h +0 -15
  574. package/example/ios/Pods/SkeletonUI/LICENSE +0 -21
  575. package/example/ios/Pods/SkeletonUI/README.md +0 -137
  576. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AngleInteractor.swift +0 -29
  577. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AnglePresenter.swift +0 -7
  578. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Animation/AnimationInteractor.swift +0 -56
  579. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearanceInteractor.swift +0 -58
  580. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearancePresenter.swift +0 -5
  581. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ClosedRange+Normalize.swift +0 -16
  582. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Image+OptionalType.swift +0 -102
  583. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ModifiedContent+SkeletonModifier.swift +0 -26
  584. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Optional+OptionalType.swift +0 -5
  585. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/SecureField+OptionalType.swift +0 -19
  586. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Text+OptionalType.swift +0 -27
  587. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/TextField+OptionalType.swift +0 -35
  588. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Toggle+OptionalType.swift +0 -29
  589. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/UnitPoint+Angle.swift +0 -8
  590. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/View+SkeletonModifier.swift +0 -8
  591. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Modifiers/SkeletonModifier.swift +0 -52
  592. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilineInteractor.swift +0 -41
  593. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilinePresenter.swift +0 -9
  594. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityInteractor.swift +0 -29
  595. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityPresenter.swift +0 -7
  596. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionInteractor.swift +0 -29
  597. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionPresenter.swift +0 -7
  598. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Protocols/OptionalType.swift +0 -4
  599. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusInteractor.swift +0 -29
  600. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusPresenter.swift +0 -7
  601. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapeInteractor.swift +0 -33
  602. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapePresenter.swift +0 -5
  603. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonForEach.swift +0 -20
  604. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonInteractor.swift +0 -27
  605. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonList.swift +0 -20
  606. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonPresenter.swift +0 -15
  607. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonShape.swift +0 -64
  608. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonView.swift +0 -25
  609. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-dummy.m +0 -5
  610. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-prefix.pch +0 -12
  611. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-umbrella.h +0 -16
  612. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.debug.xcconfig +0 -15
  613. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.modulemap +0 -6
  614. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.release.xcconfig +0 -15
  615. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.markdown +0 -75
  616. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.plist +0 -119
  617. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-dummy.m +0 -5
  618. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-umbrella.h +0 -16
  619. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.debug.xcconfig +0 -15
  620. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.modulemap +0 -6
  621. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.release.xcconfig +0 -15
  622. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-dummy.m +0 -5
  623. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-prefix.pch +0 -12
  624. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-umbrella.h +0 -75
  625. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.debug.xcconfig +0 -14
  626. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.modulemap +0 -6
  627. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.release.xcconfig +0 -14
  628. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-dummy.m +0 -5
  629. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-prefix.pch +0 -12
  630. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-umbrella.h +0 -17
  631. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.debug.xcconfig +0 -17
  632. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.modulemap +0 -6
  633. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.release.xcconfig +0 -17
  634. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-dummy.m +0 -5
  635. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-prefix.pch +0 -12
  636. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-umbrella.h +0 -16
  637. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.debug.xcconfig +0 -12
  638. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.modulemap +0 -6
  639. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.release.xcconfig +0 -12
  640. package/ios/Extensions/View++.swift +0 -9
  641. package/ios/Theme.md +0 -18
  642. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Background.colorset/Contents.json +0 -0
  643. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Border.colorset/Contents.json +0 -0
  644. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Card.colorset/Contents.json +0 -0
  645. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Contents.json +0 -0
  646. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Error.colorset/Contents.json +0 -0
  647. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Primary.colorset/Contents.json +0 -0
  648. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/PrimaryDark.colorset/Contents.json +0 -0
  649. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/PrimaryLight.colorset/Contents.json +0 -0
  650. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Secondary.colorset/Contents.json +0 -0
  651. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Success.colorset/Contents.json +0 -0
  652. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/TextSecondary.colorset/Contents.json +0 -0
  653. /package/{example/ios/Example/Assets.xcassets → ios/Resources/MoMoUIKitsColors.xcassets}/Warning.colorset/Contents.json +0 -0
package/publish.sh CHANGED
@@ -1,28 +1,562 @@
1
- #!/bin/bash
2
- rm -rf dist
3
- mkdir dist
1
+ #!/usr/bin/env bash
4
2
 
5
- cp . ./dist
3
+ set -e # Exit on error
6
4
 
7
- # GET VERSION from mck_package.json
8
- VERSIONSTRING=( v$(jq .version package.json) )
9
- VERSION=(${VERSIONSTRING//[\"]/})
10
- echo VERSION: $VERSION
5
+ # ============================================================================
6
+ # UNIVERSAL PUBLISH SCRIPT
7
+ # ============================================================================
8
+ # Usage:
9
+ # sh publish.sh beta # Run all phases for beta
10
+ # sh publish.sh release # Run all phases for release
11
+ # sh publish.sh beta check # Phase 1 only: Check version (beta)
12
+ # sh publish.sh beta maven # Phase 2 only: Publish to Maven (beta)
13
+ # sh publish.sh beta npm # Phase 3 only: Publish to NPM (beta)
14
+ # sh publish.sh release check # Phase 1 only: Check version (release)
15
+ # sh publish.sh release maven # Phase 2 only: Publish to Maven (release)
16
+ # sh publish.sh release npm # Phase 3 only: Publish to NPM (release)
17
+ #
18
+ # Release bump (RELEASE mode only):
19
+ # sh publish.sh release # default: auto-increment PATCH (0.161.0 -> 0.161.1)
20
+ # sh publish.sh release --bump # bump MINOR, reset patch to 0 (0.161.0 -> 0.162.0)
21
+ # BUMP=1 sh publish.sh release # same as --bump, via env var (handy for CI variables)
22
+ # ============================================================================
11
23
 
12
- rsync -r --verbose --exclude '*.mdx' --exclude '*Demo.js' --exclude 'props-type.js' --exclude 'prop-types.js' ./* dist
24
+ # ----------------------------------------------------------------------------
25
+ # Argument parsing
26
+ # Positional: MODE (beta|release), PHASE (check|maven|npm|all, default all)
27
+ # Flag: --bump (no value) -> RELEASE bumps the MINOR (reset patch to 0).
28
+ # Without --bump, release auto-increments PATCH.
29
+ # Env var BUMP=<non-empty/1/true/yes/minor> works as a fallback for --bump.
30
+ # ----------------------------------------------------------------------------
31
+ # Minor bump can be pre-enabled via the BUMP env var (e.g. a GitLab CI variable)
32
+ BUMP_MINOR=false
33
+ case "${BUMP:-}" in
34
+ 1|true|yes|minor) BUMP_MINOR=true ;;
35
+ esac
13
36
 
14
- # #babel component to dist
15
- #babel ./dist -d dist --copy-files
37
+ _ARGS=""
38
+ while [ $# -gt 0 ]; do
39
+ case "$1" in
40
+ --bump)
41
+ BUMP_MINOR=true
42
+ shift
43
+ ;;
44
+ *)
45
+ _ARGS="$_ARGS $1"
46
+ shift
47
+ ;;
48
+ esac
49
+ done
50
+ # Re-establish positional parameters without the consumed flags
51
+ # shellcheck disable=SC2086
52
+ set -- $_ARGS
16
53
 
17
- #copy option
18
- #cp -r ./src/ dist
54
+ MODE="${1:-}"
55
+ PHASE="${2:-all}"
19
56
 
57
+ # Validate MODE
58
+ if [ -z "$MODE" ]; then
59
+ echo "❌ Error: MODE is required"
60
+ echo ""
61
+ echo "Usage:"
62
+ echo " sh publish.sh beta [phase] # Beta publishing"
63
+ echo " sh publish.sh release [phase] # Release publishing"
64
+ echo ""
65
+ echo "Phases: check | maven | npm | all (default: all)"
66
+ echo "Bump (release only): --bump # bump MINOR instead of PATCH (or env BUMP=1)"
67
+ exit 1
68
+ fi
20
69
 
21
- #npm login
22
- #publish dist to npm
23
- cd dist
24
- npm publish --tag beta --access=public
25
- cd ..
26
- rm -rf dist
70
+ if [ "$MODE" != "beta" ] && [ "$MODE" != "release" ]; then
71
+ echo "❌ Error: Invalid MODE '$MODE'. Must be 'beta' or 'release'"
72
+ exit 1
73
+ fi
27
74
 
28
- curl -X POST -H 'Content-Type: application/json' 'https://chat.googleapis.com/v1/spaces/AAAAbP8987c/messages?key=AIzaSyDdI0hCZtE6vySjMm-WEfRq3CPzqKqqsHI&token=UGSFRvk_oYb9uGsAgs31bVvMm6jDkmD8zihGm3eyaQA%3D&threadKey=JoaXTEYaNNkl' -d '{"text": "@momo-kits/native new version release: '*"$VERSION"*' https://www.npmjs.com/package/@momo-kits/native-kits"}'
75
+ if [ "$MODE" == "beta" ] && [ "$BUMP_MINOR" = true ]; then
76
+ echo "⚠️ Note: --bump is ignored in beta mode (beta version comes from package.json)."
77
+ fi
78
+
79
+ PODSPEC_VERSION_FILES=(
80
+ "ios/native-kits.podspec"
81
+ "ios-demo/MoMoUIKitsDemo.podspec"
82
+ )
83
+
84
+ PODSPEC_DEBUG_VERSION_FILES=(
85
+ "compose/compose.podspec"
86
+ )
87
+
88
+ update_podspec_file_version() {
89
+ local PODSPEC_FILE="$1"
90
+ local PODSPEC_VERSION="$2"
91
+
92
+ if [ ! -f "$PODSPEC_FILE" ]; then
93
+ echo " ⚠️ Skipped missing podspec: $PODSPEC_FILE"
94
+ return
95
+ fi
96
+
97
+ CURRENT_PODSPEC_VERSION=$(grep -E "^[[:space:]]*[A-Za-z_]+\.version[[:space:]]*=" "$PODSPEC_FILE" | head -n 1 | sed -E "s/.*['\"]([^'\"]+)['\"].*/\1/")
98
+
99
+ if [[ "$OSTYPE" == "darwin"* ]]; then
100
+ sed -i '' -E "s/^([[:space:]]*[A-Za-z_]+\.version[[:space:]]*=[[:space:]]*)['\"][^'\"]+['\"]/\1'$PODSPEC_VERSION'/" "$PODSPEC_FILE"
101
+ else
102
+ sed -i -E "s/^([[:space:]]*[A-Za-z_]+\.version[[:space:]]*=[[:space:]]*)['\"][^'\"]+['\"]/\1'$PODSPEC_VERSION'/" "$PODSPEC_FILE"
103
+ fi
104
+
105
+ UPDATED_PODSPEC_VERSION=$(grep -E "^[[:space:]]*[A-Za-z_]+\.version[[:space:]]*=" "$PODSPEC_FILE" | head -n 1 | sed -E "s/.*['\"]([^'\"]+)['\"].*/\1/")
106
+
107
+ if [ "$UPDATED_PODSPEC_VERSION" != "$PODSPEC_VERSION" ]; then
108
+ echo "❌ Error: Failed to update $PODSPEC_FILE to version $PODSPEC_VERSION"
109
+ exit 1
110
+ fi
111
+
112
+ echo " $PODSPEC_FILE version updated: $CURRENT_PODSPEC_VERSION → $UPDATED_PODSPEC_VERSION"
113
+ }
114
+
115
+ update_podspec_versions() {
116
+ echo "📝 Updating podspec versions..."
117
+
118
+ for PODSPEC_FILE in "${PODSPEC_VERSION_FILES[@]}"; do
119
+ update_podspec_file_version "$PODSPEC_FILE" "$VERSION"
120
+ done
121
+
122
+ for PODSPEC_FILE in "${PODSPEC_DEBUG_VERSION_FILES[@]}"; do
123
+ update_podspec_file_version "$PODSPEC_FILE" "${VERSION}-debug"
124
+ done
125
+ }
126
+
127
+ # ============================================================================
128
+ # PHASE 1: CHECK AND UPDATE VERSION
129
+ # ============================================================================
130
+ phase_check_version() {
131
+ echo ""
132
+ echo "==============================================="
133
+ echo "📋 PHASE 1: CHECK AND UPDATE VERSION ($MODE)"
134
+ echo "==============================================="
135
+
136
+ PACKAGE_NAME=$(node -p "require('./package.json').name")
137
+
138
+ # ==============================================================
139
+ # BETA MODE: Check format for tag, fail if exists
140
+ # ==============================================================
141
+ if [ "$MODE" == "beta" ]; then
142
+ echo "🔍 Reading version from package.json..."
143
+ VERSION=$(node -p "require('./package.json').version")
144
+
145
+ if [ -z "$VERSION" ]; then
146
+ echo "❌ Error: Could not read version from package.json"
147
+ exit 1
148
+ fi
149
+
150
+ echo "📦 Version from package.json: $VERSION"
151
+
152
+ # Detect tag based on version format
153
+ # Has "beta" in version → tag beta
154
+ # No "beta" in version → tag alpha
155
+
156
+ if [[ "$VERSION" == *"beta"* ]]; then
157
+ NPM_TAG="beta"
158
+ echo "🏷️ Detected: Version contains 'beta' → tag: beta"
159
+ else
160
+ NPM_TAG="alpha"
161
+ echo "🏷️ Detected: Version does not contain 'beta' → tag: alpha"
162
+ fi
163
+
164
+ # Check if version exists on npm
165
+ echo "🔎 Checking if version $VERSION exists on npm..."
166
+ NPM_VERSION_INFO=$(npm view "$PACKAGE_NAME@$VERSION" version 2>/dev/null || echo "")
167
+
168
+ if [ -n "$NPM_VERSION_INFO" ]; then
169
+ echo ""
170
+ echo "❌ ERROR: Version $VERSION already exists on npm!"
171
+ echo ""
172
+ echo "Please update the version in package.json before publishing."
173
+ echo ""
174
+ exit 1
175
+ fi
176
+
177
+ echo "✅ Version $VERSION does not exist on npm. Safe to publish."
178
+ fi
179
+
180
+ # ==============================================================
181
+ # RELEASE MODE: Read from npm@latest and auto-increment
182
+ # ==============================================================
183
+ if [ "$MODE" == "release" ]; then
184
+ echo "🔍 Reading latest version from npm@latest (NOT from package.json)..."
185
+
186
+ # Read version from npm@latest
187
+ LATEST_VERSION=$(npm view "$PACKAGE_NAME@latest" version 2>/dev/null || echo "")
188
+
189
+ if [ -z "$LATEST_VERSION" ]; then
190
+ echo "❌ Error: Could not read version from npm@latest"
191
+ echo "Package may not exist on npm yet."
192
+ exit 1
193
+ fi
194
+
195
+ echo "📦 Current @latest version on npm: $LATEST_VERSION"
196
+
197
+ # Parse major.minor.patch (handle versions like 0.156.2 or 0.156.2-beta.1)
198
+ MAJOR=$(echo "$LATEST_VERSION" | cut -d'.' -f1)
199
+ MINOR=$(echo "$LATEST_VERSION" | cut -d'.' -f2)
200
+ PATCH=$(echo "$LATEST_VERSION" | cut -d'.' -f3 | cut -d'-' -f1)
201
+
202
+ # Compute next version:
203
+ # --bump -> bump MINOR, reset patch to 0 (0.161.0 -> 0.162.0)
204
+ # default -> auto-increment PATCH (0.161.0 -> 0.161.1)
205
+ if [ "$BUMP_MINOR" = true ]; then
206
+ MINOR=$((MINOR + 1))
207
+ NEW_PATCH=0
208
+ echo "🔼 Bump: MINOR (--bump)"
209
+ else
210
+ NEW_PATCH=$((PATCH + 1))
211
+ echo "🔼 Bump: PATCH (default)"
212
+ fi
213
+ VERSION="$MAJOR.$MINOR.$NEW_PATCH"
214
+
215
+ echo "🔼 Computed next version: $LATEST_VERSION → $VERSION"
216
+
217
+ # Find the next publishable patch within this major.minor line.
218
+ # A version is "taken" if EITHER the normal OR the "-debug" variant
219
+ # already exists on npm (phase 3 publishes both, so both must be free).
220
+ # Keeps incrementing the patch (e.g. 0.161.0 -> 0.161.1 -> 0.161.2 ...)
221
+ # until a fully-free version is found, or until a safety cap is hit.
222
+ echo "🔎 Finding a publishable version starting at $VERSION..."
223
+ MAX_TRIES=100
224
+ TRIES=0
225
+ while true; do
226
+ EXISTING=$(npm view "$PACKAGE_NAME@$VERSION" version 2>/dev/null || echo "")
227
+ EXISTING_DEBUG=$(npm view "$PACKAGE_NAME@$VERSION-debug" version 2>/dev/null || echo "")
228
+
229
+ if [ -z "$EXISTING" ] && [ -z "$EXISTING_DEBUG" ]; then
230
+ echo "✅ $VERSION is free (normal + debug). Using this version."
231
+ break
232
+ fi
233
+
234
+ echo "⚠️ $VERSION is taken (normal: ${EXISTING:-free}, debug: ${EXISTING_DEBUG:-free}). Incrementing patch..."
235
+ TRIES=$((TRIES + 1))
236
+ if [ "$TRIES" -ge "$MAX_TRIES" ]; then
237
+ echo "❌ Error: Could not find a free version after $MAX_TRIES tries (stuck near $VERSION)."
238
+ exit 1
239
+ fi
240
+ NEW_PATCH=$((NEW_PATCH + 1))
241
+ VERSION="$MAJOR.$MINOR.$NEW_PATCH"
242
+ echo " → trying $VERSION"
243
+ done
244
+
245
+ # Update package.json with new version
246
+ CURRENT_VERSION=$(node -p "require('./package.json').version")
247
+ if [[ "$OSTYPE" == "darwin"* ]]; then
248
+ sed -i '' "s/\"version\": \"$CURRENT_VERSION\"/\"version\": \"$VERSION\"/" package.json
249
+ else
250
+ sed -i "s/\"version\": \"$CURRENT_VERSION\"/\"version\": \"$VERSION\"/" package.json
251
+ fi
252
+ echo "📝 Updated package.json: $CURRENT_VERSION → $VERSION"
253
+
254
+ # Set NPM tag to latest
255
+ NPM_TAG="latest"
256
+ fi
257
+
258
+ # Update gradle.properties with the same version
259
+ echo "📝 Updating gradle.properties..."
260
+ CURRENT_GRADLE_VERSION=$(grep "^version=" gradle.properties | cut -d'=' -f2 | tr -d '"')
261
+
262
+ if [[ "$OSTYPE" == "darwin"* ]]; then
263
+ sed -i '' "s/^version=.*/version=$VERSION/" gradle.properties
264
+ else
265
+ sed -i "s/^version=.*/version=$VERSION/" gradle.properties
266
+ fi
267
+
268
+ echo " Gradle version updated: $CURRENT_GRADLE_VERSION → $VERSION"
269
+
270
+ update_podspec_versions
271
+
272
+ export VERSION="$VERSION"
273
+ export NPM_TAG="$NPM_TAG"
274
+
275
+ echo "✅ Using version: $VERSION"
276
+ echo "✅ NPM tag: $NPM_TAG"
277
+ echo "✅ PHASE 1 COMPLETED"
278
+ echo ""
279
+ }
280
+
281
+ # ============================================================================
282
+ # PHASE 2: PUBLISH TO MAVEN
283
+ # ============================================================================
284
+ phase_publish_maven() {
285
+ echo ""
286
+ echo "==============================================="
287
+ echo "🔧 PHASE 2: PUBLISH TO MAVEN ($MODE)"
288
+ echo "==============================================="
289
+
290
+ # Get version from package.json
291
+ VERSION=$(node -p "require('./package.json').version")
292
+ export VERSION="$VERSION"
293
+
294
+ echo "📦 Publishing KMP artifacts to Maven (version ${VERSION})..."
295
+
296
+ ./gradlew :compose:publishAllPublicationsToGitLabPackagesRepository
297
+
298
+ echo "✅ compose Maven publishing completed successfully!"
299
+
300
+ echo "📦 Publishing sample/shared KMP artifacts to Maven (version ${VERSION})..."
301
+
302
+ # Temporarily remove composeResources and compose { resources { ... } } block
303
+ echo "📦 Backing up sample/shared composeResources and build.gradle.kts..."
304
+ # mv into an existing dir nests instead of renaming, so a backup left behind by a
305
+ # crashed run must be cleared first or the restore below puts back the wrong tree.
306
+ rm -rf sample/shared/src/commonMain/composeResources.backup
307
+ if [ -d "sample/shared/src/commonMain/composeResources" ]; then
308
+ mv sample/shared/src/commonMain/composeResources sample/shared/src/commonMain/composeResources.backup
309
+ fi
310
+ cp sample/shared/build.gradle.kts sample/shared/build.gradle.kts.backup
311
+ if [[ "$OSTYPE" == "darwin"* ]]; then
312
+ sed -i '' '/^compose {$/,/^}$/d' sample/shared/build.gradle.kts
313
+ else
314
+ sed -i '/^compose {$/,/^}$/d' sample/shared/build.gradle.kts
315
+ fi
316
+
317
+ ./gradlew :sample:shared:publishAllPublicationsToGitLabPackagesRepository
318
+
319
+ # Restore composeResources and build.gradle.kts
320
+ echo "📦 Restoring sample/shared composeResources and build.gradle.kts..."
321
+ mv sample/shared/build.gradle.kts.backup sample/shared/build.gradle.kts
322
+ if [ -d "sample/shared/src/commonMain/composeResources.backup" ]; then
323
+ mv sample/shared/src/commonMain/composeResources.backup sample/shared/src/commonMain/composeResources
324
+ fi
325
+
326
+ echo "✅ sample/shared Maven publishing completed successfully!"
327
+ echo "✅ PHASE 2 COMPLETED"
328
+ echo ""
329
+ }
330
+
331
+ # ============================================================================
332
+ # PHASE 3: PUBLISH TO NPM
333
+ # ============================================================================
334
+ phase_publish_npm() {
335
+ echo ""
336
+ echo "==============================================="
337
+ echo "📦 PHASE 3: PUBLISH TO NPM ($MODE)"
338
+ echo "==============================================="
339
+
340
+ # Get version from package.json
341
+ VERSION=$(node -p "require('./package.json').version")
342
+ export VERSION="$VERSION"
343
+
344
+ echo "📦 Version from package.json: $VERSION"
345
+
346
+ # Determine NPM tag (should already be set from phase 1, but fallback just in case)
347
+ if [ -z "$NPM_TAG" ]; then
348
+ echo "⚠️ NPM_TAG not set, re-detecting..."
349
+ if [ "$MODE" == "beta" ]; then
350
+ # Re-detect based on version format
351
+ if [[ "$VERSION" == *"beta"* ]]; then
352
+ NPM_TAG="beta"
353
+ echo "🏷️ Detected: Version contains 'beta' → tag: beta"
354
+ else
355
+ NPM_TAG="alpha"
356
+ echo "🏷️ Detected: Version does not contain 'beta' → tag: alpha"
357
+ fi
358
+ else
359
+ NPM_TAG="latest"
360
+ echo "🏷️ Release mode → tag: latest"
361
+ fi
362
+ else
363
+ echo "✅ NPM_TAG already set: $NPM_TAG"
364
+ fi
365
+
366
+ echo "📦 Publishing version: $VERSION"
367
+ echo "🏷️ NPM tag: $NPM_TAG"
368
+
369
+ ./gradlew clean
370
+
371
+ # ============================================================
372
+ # FIRST PUBLISH: DEBUG VERSION (with compose kits included)
373
+ # ============================================================
374
+ echo ""
375
+ # A bad token surfaces as a 404 on the PUT, after the working tree was already rewritten
376
+ # below — so verify auth first, before anything is touched.
377
+ if ! npm whoami --registry https://registry.npmjs.org >/dev/null 2>&1; then
378
+ echo "❌ Error: npm auth failed (npm whoami). Renew the token in .npmrc / ~/.npmrc and retry."
379
+ exit 1
380
+ fi
381
+
382
+ echo "🔧 Preparing debug version with compose kits..."
383
+
384
+ # Create debug version
385
+ DEBUG_VERSION="${VERSION}-debug"
386
+
387
+ # set -e aborts mid-phase on any failure; put the tree back no matter where it stopped.
388
+ # Idempotent: the happy path already moved the backups away and reset the version.
389
+ restore_npm_workspace() {
390
+ [ -f .npmignore.backup ] && mv .npmignore.backup .npmignore
391
+ [ -f compose/build.gradle.kts.backup ] && mv compose/build.gradle.kts.backup compose/build.gradle.kts
392
+ local pkg_version
393
+ pkg_version=$(node -p "require('./package.json').version")
394
+ if [ "$pkg_version" != "$VERSION" ]; then
395
+ if [[ "$OSTYPE" == "darwin"* ]]; then
396
+ sed -i '' "s/\"version\": \"$pkg_version\"/\"version\": \"$VERSION\"/" package.json
397
+ else
398
+ sed -i "s/\"version\": \"$pkg_version\"/\"version\": \"$VERSION\"/" package.json
399
+ fi
400
+ fi
401
+ }
402
+ trap restore_npm_workspace EXIT
403
+ echo "📦 Debug version: $DEBUG_VERSION"
404
+
405
+ # Get current version from package.json (in case it's different from $VERSION)
406
+ CURRENT_PKG_VERSION=$(node -p "require('./package.json').version")
407
+
408
+ # Update package.json version to debug version
409
+ if [[ "$OSTYPE" == "darwin"* ]]; then
410
+ sed -i '' "s/\"version\": \"$CURRENT_PKG_VERSION\"/\"version\": \"$DEBUG_VERSION\"/" package.json
411
+ else
412
+ sed -i "s/\"version\": \"$CURRENT_PKG_VERSION\"/\"version\": \"$DEBUG_VERSION\"/" package.json
413
+ fi
414
+
415
+ # Backup compose/build.gradle.kts
416
+ echo "📦 Backing up compose/build.gradle.kts..."
417
+ cp compose/build.gradle.kts compose/build.gradle.kts.backup
418
+
419
+ # Comment out maven publish in compose/build.gradle.kts
420
+ echo "💬 Commenting out maven publish in compose/build.gradle.kts..."
421
+ if [[ "$OSTYPE" == "darwin"* ]]; then
422
+ sed -i '' 's/^import com\.vanniktech\.maven\.publish\.JavadocJar$/\/\/ &/' compose/build.gradle.kts
423
+ sed -i '' 's/^import com\.vanniktech\.maven\.publish\.KotlinMultiplatform$/\/\/ &/' compose/build.gradle.kts
424
+ sed -i '' 's/^ alias(libs\.plugins\.vanniktech\.mavenPublish)$/\/\/ &/' compose/build.gradle.kts
425
+ sed -i '' '/^publishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
426
+ sed -i '' '/^mavenPublishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
427
+ else
428
+ sed -i 's/^import com\.vanniktech\.maven\.publish\.JavadocJar$/\/\/ &/' compose/build.gradle.kts
429
+ sed -i 's/^import com\.vanniktech\.maven\.publish\.KotlinMultiplatform$/\/\/ &/' compose/build.gradle.kts
430
+ sed -i 's/^ alias(libs\.plugins\.vanniktech\.mavenPublish)$/\/\/ &/' compose/build.gradle.kts
431
+ sed -i '/^publishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
432
+ sed -i '/^mavenPublishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
433
+ fi
434
+
435
+ # Modify android configuration for debug version
436
+ echo "🔧 Modifying android configuration for debug version..."
437
+ if [[ "$OSTYPE" == "darwin"* ]]; then
438
+ sed -i '' 's/namespace = "\$gitlabGroup\.\$gitlabArtifactId"/namespace = "vn.momo.kits.kits"/' compose/build.gradle.kts
439
+ sed -i '' 's/compileSdk = libs\.versions\.android\.compileSdk\.get()\.toInt()/compileSdk = 35/' compose/build.gradle.kts
440
+ sed -i '' 's/minSdk = libs\.versions\.android\.minSdk\.get()\.toInt()/minSdk = 24/' compose/build.gradle.kts
441
+ sed -i '' "s/version = gitlabVersion/version = \"$DEBUG_VERSION\"/" compose/build.gradle.kts
442
+ else
443
+ sed -i 's/namespace = "\$gitlabGroup\.\$gitlabArtifactId"/namespace = "vn.momo.kits.kits"/' compose/build.gradle.kts
444
+ sed -i 's/compileSdk = libs\.versions\.android\.compileSdk\.get()\.toInt()/compileSdk = 35/' compose/build.gradle.kts
445
+ sed -i 's/minSdk = libs\.versions\.android\.minSdk\.get()\.toInt()/minSdk = 24/' compose/build.gradle.kts
446
+ sed -i "s/version = gitlabVersion/version = \"$DEBUG_VERSION\"/" compose/build.gradle.kts
447
+ fi
448
+
449
+ # Backup .npmignore
450
+ cp .npmignore .npmignore.backup
451
+
452
+ # Create minimal .npmignore for debug version
453
+ cat > .npmignore << 'EOF'
454
+ sample/
455
+ build/
456
+
457
+ .fleet
458
+ .gradle
459
+ .idea
460
+ .kotlin
461
+ .run
462
+
463
+ .gitattributes
464
+ .gitlab-ci.yml
465
+ .npmignore.backup
466
+ EOF
467
+
468
+ echo "📤 Publishing debug version (with compose)..."
469
+ npm publish --tag $NPM_TAG --access=public
470
+
471
+ echo "✅ Debug version published successfully!"
472
+
473
+ # Restore .npmignore
474
+ mv .npmignore.backup .npmignore
475
+ echo "✅ .npmignore restored"
476
+
477
+ # Restore compose/build.gradle.kts
478
+ mv compose/build.gradle.kts.backup compose/build.gradle.kts
479
+ echo "✅ compose/build.gradle.kts restored"
480
+
481
+ # Restore package.json version to original
482
+ # Verify current version is debug version before restoring
483
+ CURRENT_VERSION_CHECK=$(node -p "require('./package.json').version")
484
+ if [ "$CURRENT_VERSION_CHECK" == "$DEBUG_VERSION" ]; then
485
+ if [[ "$OSTYPE" == "darwin"* ]]; then
486
+ sed -i '' "s/\"version\": \"$DEBUG_VERSION\"/\"version\": \"$VERSION\"/" package.json
487
+ else
488
+ sed -i "s/\"version\": \"$DEBUG_VERSION\"/\"version\": \"$VERSION\"/" package.json
489
+ fi
490
+ echo "✅ package.json version restored: $DEBUG_VERSION → $VERSION"
491
+ else
492
+ echo "⚠️ Warning: package.json version is $CURRENT_VERSION_CHECK, expected $DEBUG_VERSION"
493
+ echo " Restoring to $VERSION anyway..."
494
+ if [[ "$OSTYPE" == "darwin"* ]]; then
495
+ sed -i '' "s/\"version\": \"$CURRENT_VERSION_CHECK\"/\"version\": \"$VERSION\"/" package.json
496
+ else
497
+ sed -i "s/\"version\": \"$CURRENT_VERSION_CHECK\"/\"version\": \"$VERSION\"/" package.json
498
+ fi
499
+ fi
500
+
501
+ # ============================================================
502
+ # SECOND PUBLISH: NORMAL VERSION (without compose)
503
+ # ============================================================
504
+ echo ""
505
+ echo "📤 Publishing normal version (without compose)..."
506
+ npm publish --tag $NPM_TAG --access=public
507
+
508
+ echo "✅ Normal version published successfully!"
509
+ trap - EXIT
510
+
511
+ echo ""
512
+ echo "✅ PHASE 3 COMPLETED"
513
+ echo " 🐛 Debug version: $DEBUG_VERSION (with compose) - Published first"
514
+ echo " 📦 Normal version: $VERSION (without compose) - Published second"
515
+ echo " 🏷️ NPM Tag: $NPM_TAG"
516
+ echo ""
517
+ }
518
+
519
+ # ============================================================================
520
+ # MAIN EXECUTION
521
+ # ============================================================================
522
+
523
+ echo ""
524
+ echo "🚀 PUBLISH SCRIPT - MODE: $(echo $MODE | tr '[:lower:]' '[:upper:]')"
525
+ if [ "$MODE" == "release" ]; then
526
+ if [ "$BUMP_MINOR" = true ]; then echo " Bump: MINOR (--bump)"; else echo " Bump: PATCH (default)"; fi
527
+ fi
528
+ echo "================================================="
529
+
530
+ case "$PHASE" in
531
+ "check")
532
+ echo "Running PHASE 1 only: Check and update version"
533
+ phase_check_version
534
+ ;;
535
+ "maven")
536
+ echo "Running PHASE 2 only: Publish to Maven"
537
+ phase_publish_maven
538
+ ;;
539
+ "npm")
540
+ echo "Running PHASE 3 only: Publish to NPM"
541
+ phase_publish_npm
542
+ ;;
543
+ "all")
544
+ echo "Running ALL PHASES"
545
+ phase_check_version
546
+ phase_publish_maven
547
+ phase_publish_npm
548
+ echo ""
549
+ echo "🎉 ALL PHASES COMPLETED SUCCESSFULLY!"
550
+ echo "================================================="
551
+ ;;
552
+ *)
553
+ echo "❌ Error: Invalid phase '$PHASE'"
554
+ echo ""
555
+ echo "Usage:"
556
+ echo " sh publish.sh $MODE # Run all phases"
557
+ echo " sh publish.sh $MODE check # Phase 1: Check and update version"
558
+ echo " sh publish.sh $MODE maven # Phase 2: Publish to Maven"
559
+ echo " sh publish.sh $MODE npm # Phase 3: Publish to NPM"
560
+ exit 1
561
+ ;;
562
+ esac