@momo-kits/native-kits 0.161.3-beta.1 → 0.162.1-beta.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.
- package/.claude/settings.local.json +32 -0
- package/build.gradle.kts +11 -0
- package/compose/build.gradle.kts +189 -0
- package/compose/build.gradle.kts.backup +189 -0
- package/compose/compose.podspec +47 -0
- package/compose/src/androidMain/kotlin/vn/momo/kits/navigation/ScrollToTop.android.kt +6 -0
- package/compose/src/androidMain/kotlin/vn/momo/kits/platform/Platform.android.kt +123 -0
- package/compose/src/commonMain/composeResources/font/momosignature.otf +0 -0
- package/compose/src/commonMain/composeResources/font/momotrustdisplay.otf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_black.otf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_black.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_bold.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_heavy.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_light.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_medium.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_regular.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_semibold.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_thin.otf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_thin.ttf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_ultralight.otf +0 -0
- package/compose/src/commonMain/composeResources/font/sfprotext_ultralight.ttf +0 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/AnimationSearchInput.kt +52 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/Context.kt +109 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/FloatingButton.kt +183 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/Header.kt +207 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderAnimated.kt +39 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderBackground.kt +86 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderDefault.kt +76 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderExtended.kt +76 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderRight.kt +294 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/HeaderTitle.kt +33 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/LiteScreen.kt +826 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/NavigationContainer.kt +109 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/Screen.kt +378 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/application/useHeaderSearchAnimation.kt +69 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Avatar.kt +157 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Badge.kt +80 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeDot.kt +32 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeRibbon.kt +338 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/BaselineView.kt +175 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Button.kt +354 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Carousel.kt +113 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/CheckBox.kt +89 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Chip.kt +128 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Collapse.kt +209 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/CupertinoOverscroll.kt +543 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Divider.kt +23 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Icon.kt +76 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/IconButton.kt +140 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Image.kt +188 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Information.kt +112 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Input.kt +477 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputDropDown.kt +114 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputMoney.kt +214 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputOTP.kt +240 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputPhoneNumber.kt +216 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputSearch.kt +259 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputTextArea.kt +180 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/LazyColumnWithBouncing.kt +343 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Loader.kt +108 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationDot.kt +56 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationNumber.kt +41 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationScroll.kt +84 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PaginationWhiteDot.kt +40 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupNotify.kt +331 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupPromotion.kt +97 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/ProgressInfo.kt +310 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Radio.kt +59 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Rating.kt +87 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Skeleton.kt +90 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Slider.kt +323 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Stepper.kt +217 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Steps.kt +473 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/SuggestAction.kt +122 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Swipe.kt +199 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Switch.kt +91 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/TabView.kt +470 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tag.kt +88 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Text.kt +131 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Title.kt +203 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tooltip.kt +498 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/TrustBanner.kt +177 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/Uploader.kt +182 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePicker.kt +193 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerTypes.kt +29 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/DateTimePickerUtils.kt +234 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/components/datetimepicker/WheelPicker.kt +188 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/const/Colors.kt +306 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/const/Radius.kt +12 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/const/Spacing.kt +16 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/const/Theme.kt +188 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/const/Typography.kt +270 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Card.kt +2 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Item.kt +35 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Section.kt +2 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/AutomationId.kt +52 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Clickable.kt +66 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Conditional.kt +11 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Shadow.kt +48 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Size.kt +51 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/BottomSheet.kt +253 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ModalScreen.kt +129 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigation.kt +93 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/NavigationContainer.kt +145 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/Navigator.kt +346 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/ScrollToTop.kt +8 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackScreen.kt +556 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTab.kt +155 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/BottomTabBar.kt +223 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/bottomtab/CurvedContainer.kt +86 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/FloatingButton.kt +169 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/Header.kt +319 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderBackground.kt +81 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderRight.kt +309 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderTitle.kt +34 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderUser.kt +360 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/SnackBar.kt +132 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/tracking/ScreenTracker.kt +128 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/platform/ComposeLottieAnimation.kt +70 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/platform/Platform.kt +58 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Deprecated.kt +107 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Icons.kt +1329 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Resources.kt +65 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Tracking.kt +15 -0
- package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Utils.kt +105 -0
- package/compose/src/iosMain/kotlin/vn/momo/kits/navigation/ScrollToTop.ios.kt +32 -0
- package/compose/src/iosMain/kotlin/vn/momo/kits/platform/Platform.ios.kt +184 -0
- package/gradle/libs.versions.toml +67 -0
- package/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/gradle/wrapper/gradle-wrapper.properties +8 -0
- package/gradle.properties +26 -0
- package/gradlew +252 -0
- package/gradlew.bat +94 -0
- package/ios/Application/ApplicationEnvironment.swift +2 -6
- package/ios/Input/Input.swift +19 -19
- package/ios/Input/InputPhoneNumber.swift +17 -17
- package/ios/Typography/Text.swift +19 -14
- package/ios/Typography/Typography.swift +22 -1
- package/local.properties +8 -0
- package/package.json +1 -1
- package/publish.sh +134 -71
- package/settings.gradle.kts +64 -0
- package/example/ios/Example.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
- package/example/ios/Example.xcworkspace/xcuserdata/huynhdung.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/example/ios/Example.xcworkspace/xcuserdata/huynhdung.xcuserdatad/xcschemes/xcschememanagement.plist +0 -5
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +0 -58
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/Pods-Example.xcscheme +0 -58
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/SDWebImage.xcscheme +0 -58
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +0 -58
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/SkeletonUI.xcscheme +0 -58
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/huynhdung.xcuserdatad/xcschemes/xcschememanagement.plist +0 -46
|
@@ -2,7 +2,28 @@ import SwiftUI
|
|
|
2
2
|
|
|
3
3
|
public extension Font {
|
|
4
4
|
static func appFont(size: CGFloat) -> Font {
|
|
5
|
-
|
|
5
|
+
let defaultScreenSize: CGFloat = 375
|
|
6
|
+
let maxFontScale: CGFloat = 1.5
|
|
7
|
+
let maxDeviceScale: CGFloat = 5
|
|
8
|
+
|
|
9
|
+
let deviceWidth = UIScreen.main.bounds.width
|
|
10
|
+
let deviceScale = deviceWidth / defaultScreenSize
|
|
11
|
+
|
|
12
|
+
let defaultFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
|
|
13
|
+
let scaledFont = UIFontMetrics.default.scaledFont(for: defaultFont)
|
|
14
|
+
let fontScale = scaledFont.pointSize / defaultFont.pointSize
|
|
15
|
+
|
|
16
|
+
var fontSize = size
|
|
17
|
+
|
|
18
|
+
if deviceScale > 1 {
|
|
19
|
+
fontSize = min(fontSize * deviceScale, fontSize + maxDeviceScale)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
if fontScale > 1 {
|
|
23
|
+
fontSize = min(fontSize * fontScale, fontSize * maxFontScale)
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return Font.system(size: fontSize)
|
|
6
27
|
}
|
|
7
28
|
|
|
8
29
|
// New supported typography styles
|
package/local.properties
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
## This file must *NOT* be checked into Version Control Systems,
|
|
2
|
+
# as it contains information specific to your local configuration.
|
|
3
|
+
#
|
|
4
|
+
# Location of the SDK. This is only used by Gradle.
|
|
5
|
+
# For customization when using a Version Control System, please read the
|
|
6
|
+
# header note.
|
|
7
|
+
#Mon Dec 22 10:07:29 ICT 2025
|
|
8
|
+
sdk.dir=/Users/phuc/Library/Android/sdk
|
package/package.json
CHANGED
package/publish.sh
CHANGED
|
@@ -14,8 +14,43 @@ set -e # Exit on error
|
|
|
14
14
|
# sh publish.sh release check # Phase 1 only: Check version (release)
|
|
15
15
|
# sh publish.sh release maven # Phase 2 only: Publish to Maven (release)
|
|
16
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)
|
|
17
22
|
# ============================================================================
|
|
18
23
|
|
|
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
|
|
36
|
+
|
|
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
|
|
53
|
+
|
|
19
54
|
MODE="${1:-}"
|
|
20
55
|
PHASE="${2:-all}"
|
|
21
56
|
|
|
@@ -28,6 +63,7 @@ if [ -z "$MODE" ]; then
|
|
|
28
63
|
echo " sh publish.sh release [phase] # Release publishing"
|
|
29
64
|
echo ""
|
|
30
65
|
echo "Phases: check | maven | npm | all (default: all)"
|
|
66
|
+
echo "Bump (release only): --bump # bump MINOR instead of PATCH (or env BUMP=1)"
|
|
31
67
|
exit 1
|
|
32
68
|
fi
|
|
33
69
|
|
|
@@ -36,6 +72,10 @@ if [ "$MODE" != "beta" ] && [ "$MODE" != "release" ]; then
|
|
|
36
72
|
exit 1
|
|
37
73
|
fi
|
|
38
74
|
|
|
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
|
+
|
|
39
79
|
# ============================================================================
|
|
40
80
|
# PHASE 1: CHECK AND UPDATE VERSION
|
|
41
81
|
# ============================================================================
|
|
@@ -44,27 +84,27 @@ phase_check_version() {
|
|
|
44
84
|
echo "==============================================="
|
|
45
85
|
echo "📋 PHASE 1: CHECK AND UPDATE VERSION ($MODE)"
|
|
46
86
|
echo "==============================================="
|
|
47
|
-
|
|
87
|
+
|
|
48
88
|
PACKAGE_NAME=$(node -p "require('./package.json').name")
|
|
49
|
-
|
|
89
|
+
|
|
50
90
|
# ==============================================================
|
|
51
91
|
# BETA MODE: Check format for tag, fail if exists
|
|
52
92
|
# ==============================================================
|
|
53
93
|
if [ "$MODE" == "beta" ]; then
|
|
54
94
|
echo "🔍 Reading version from package.json..."
|
|
55
95
|
VERSION=$(node -p "require('./package.json').version")
|
|
56
|
-
|
|
96
|
+
|
|
57
97
|
if [ -z "$VERSION" ]; then
|
|
58
98
|
echo "❌ Error: Could not read version from package.json"
|
|
59
99
|
exit 1
|
|
60
100
|
fi
|
|
61
|
-
|
|
101
|
+
|
|
62
102
|
echo "📦 Version from package.json: $VERSION"
|
|
63
|
-
|
|
103
|
+
|
|
64
104
|
# Detect tag based on version format
|
|
65
105
|
# Has "beta" in version → tag beta
|
|
66
106
|
# No "beta" in version → tag alpha
|
|
67
|
-
|
|
107
|
+
|
|
68
108
|
if [[ "$VERSION" == *"beta"* ]]; then
|
|
69
109
|
NPM_TAG="beta"
|
|
70
110
|
echo "🏷️ Detected: Version contains 'beta' → tag: beta"
|
|
@@ -72,11 +112,11 @@ phase_check_version() {
|
|
|
72
112
|
NPM_TAG="alpha"
|
|
73
113
|
echo "🏷️ Detected: Version does not contain 'beta' → tag: alpha"
|
|
74
114
|
fi
|
|
75
|
-
|
|
115
|
+
|
|
76
116
|
# Check if version exists on npm
|
|
77
117
|
echo "🔎 Checking if version $VERSION exists on npm..."
|
|
78
118
|
NPM_VERSION_INFO=$(npm view "$PACKAGE_NAME@$VERSION" version 2>/dev/null || echo "")
|
|
79
|
-
|
|
119
|
+
|
|
80
120
|
if [ -n "$NPM_VERSION_INFO" ]; then
|
|
81
121
|
echo ""
|
|
82
122
|
echo "❌ ERROR: Version $VERSION already exists on npm!"
|
|
@@ -85,55 +125,75 @@ phase_check_version() {
|
|
|
85
125
|
echo ""
|
|
86
126
|
exit 1
|
|
87
127
|
fi
|
|
88
|
-
|
|
128
|
+
|
|
89
129
|
echo "✅ Version $VERSION does not exist on npm. Safe to publish."
|
|
90
130
|
fi
|
|
91
|
-
|
|
131
|
+
|
|
92
132
|
# ==============================================================
|
|
93
133
|
# RELEASE MODE: Read from npm@latest and auto-increment
|
|
94
134
|
# ==============================================================
|
|
95
135
|
if [ "$MODE" == "release" ]; then
|
|
96
136
|
echo "🔍 Reading latest version from npm@latest (NOT from package.json)..."
|
|
97
|
-
|
|
137
|
+
|
|
98
138
|
# Read version from npm@latest
|
|
99
139
|
LATEST_VERSION=$(npm view "$PACKAGE_NAME@latest" version 2>/dev/null || echo "")
|
|
100
|
-
|
|
140
|
+
|
|
101
141
|
if [ -z "$LATEST_VERSION" ]; then
|
|
102
142
|
echo "❌ Error: Could not read version from npm@latest"
|
|
103
143
|
echo "Package may not exist on npm yet."
|
|
104
144
|
exit 1
|
|
105
145
|
fi
|
|
106
|
-
|
|
146
|
+
|
|
107
147
|
echo "📦 Current @latest version on npm: $LATEST_VERSION"
|
|
108
|
-
|
|
109
|
-
# Parse
|
|
110
|
-
# Extract major.minor.patch (handle versions like 0.156.2 or 0.156.2-beta.1)
|
|
148
|
+
|
|
149
|
+
# Parse major.minor.patch (handle versions like 0.156.2 or 0.156.2-beta.1)
|
|
111
150
|
MAJOR=$(echo "$LATEST_VERSION" | cut -d'.' -f1)
|
|
112
151
|
MINOR=$(echo "$LATEST_VERSION" | cut -d'.' -f2)
|
|
113
152
|
PATCH=$(echo "$LATEST_VERSION" | cut -d'.' -f3 | cut -d'-' -f1)
|
|
114
|
-
|
|
115
|
-
#
|
|
116
|
-
|
|
153
|
+
|
|
154
|
+
# Compute next version:
|
|
155
|
+
# --bump -> bump MINOR, reset patch to 0 (0.161.0 -> 0.162.0)
|
|
156
|
+
# default -> auto-increment PATCH (0.161.0 -> 0.161.1)
|
|
157
|
+
if [ "$BUMP_MINOR" = true ]; then
|
|
158
|
+
MINOR=$((MINOR + 1))
|
|
159
|
+
NEW_PATCH=0
|
|
160
|
+
echo "🔼 Bump: MINOR (--bump)"
|
|
161
|
+
else
|
|
162
|
+
NEW_PATCH=$((PATCH + 1))
|
|
163
|
+
echo "🔼 Bump: PATCH (default)"
|
|
164
|
+
fi
|
|
117
165
|
VERSION="$MAJOR.$MINOR.$NEW_PATCH"
|
|
118
|
-
|
|
119
|
-
echo "🔼
|
|
120
|
-
|
|
121
|
-
#
|
|
122
|
-
|
|
166
|
+
|
|
167
|
+
echo "🔼 Computed next version: $LATEST_VERSION → $VERSION"
|
|
168
|
+
|
|
169
|
+
# Find the next publishable patch within this major.minor line.
|
|
170
|
+
# A version is "taken" if EITHER the normal OR the "-debug" variant
|
|
171
|
+
# already exists on npm (phase 3 publishes both, so both must be free).
|
|
172
|
+
# Keeps incrementing the patch (e.g. 0.161.0 -> 0.161.1 -> 0.161.2 ...)
|
|
173
|
+
# until a fully-free version is found, or until a safety cap is hit.
|
|
174
|
+
echo "🔎 Finding a publishable version starting at $VERSION..."
|
|
175
|
+
MAX_TRIES=100
|
|
176
|
+
TRIES=0
|
|
123
177
|
while true; do
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
VERSION="$MAJOR.$MINOR.$NEW_PATCH"
|
|
130
|
-
echo " Version incremented: → $VERSION"
|
|
131
|
-
else
|
|
132
|
-
echo "✅ Version $VERSION does not exist on npm. Using this version."
|
|
178
|
+
EXISTING=$(npm view "$PACKAGE_NAME@$VERSION" version 2>/dev/null || echo "")
|
|
179
|
+
EXISTING_DEBUG=$(npm view "$PACKAGE_NAME@$VERSION-debug" version 2>/dev/null || echo "")
|
|
180
|
+
|
|
181
|
+
if [ -z "$EXISTING" ] && [ -z "$EXISTING_DEBUG" ]; then
|
|
182
|
+
echo "✅ $VERSION is free (normal + debug). Using this version."
|
|
133
183
|
break
|
|
134
184
|
fi
|
|
185
|
+
|
|
186
|
+
echo "⚠️ $VERSION is taken (normal: ${EXISTING:-free}, debug: ${EXISTING_DEBUG:-free}). Incrementing patch..."
|
|
187
|
+
TRIES=$((TRIES + 1))
|
|
188
|
+
if [ "$TRIES" -ge "$MAX_TRIES" ]; then
|
|
189
|
+
echo "❌ Error: Could not find a free version after $MAX_TRIES tries (stuck near $VERSION)."
|
|
190
|
+
exit 1
|
|
191
|
+
fi
|
|
192
|
+
NEW_PATCH=$((NEW_PATCH + 1))
|
|
193
|
+
VERSION="$MAJOR.$MINOR.$NEW_PATCH"
|
|
194
|
+
echo " → trying $VERSION"
|
|
135
195
|
done
|
|
136
|
-
|
|
196
|
+
|
|
137
197
|
# Update package.json with new version
|
|
138
198
|
CURRENT_VERSION=$(node -p "require('./package.json').version")
|
|
139
199
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
@@ -142,26 +202,26 @@ phase_check_version() {
|
|
|
142
202
|
sed -i "s/\"version\": \"$CURRENT_VERSION\"/\"version\": \"$VERSION\"/" package.json
|
|
143
203
|
fi
|
|
144
204
|
echo "📝 Updated package.json: $CURRENT_VERSION → $VERSION"
|
|
145
|
-
|
|
205
|
+
|
|
146
206
|
# Set NPM tag to latest
|
|
147
207
|
NPM_TAG="latest"
|
|
148
208
|
fi
|
|
149
|
-
|
|
209
|
+
|
|
150
210
|
# Update gradle.properties with the same version
|
|
151
211
|
echo "📝 Updating gradle.properties..."
|
|
152
212
|
CURRENT_GRADLE_VERSION=$(grep "^version=" gradle.properties | cut -d'=' -f2 | tr -d '"')
|
|
153
|
-
|
|
213
|
+
|
|
154
214
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
155
215
|
sed -i '' "s/^version=.*/version=$VERSION/" gradle.properties
|
|
156
216
|
else
|
|
157
217
|
sed -i "s/^version=.*/version=$VERSION/" gradle.properties
|
|
158
218
|
fi
|
|
159
|
-
|
|
219
|
+
|
|
160
220
|
echo " Gradle version updated: $CURRENT_GRADLE_VERSION → $VERSION"
|
|
161
|
-
|
|
221
|
+
|
|
162
222
|
export VERSION="$VERSION"
|
|
163
223
|
export NPM_TAG="$NPM_TAG"
|
|
164
|
-
|
|
224
|
+
|
|
165
225
|
echo "✅ Using version: $VERSION"
|
|
166
226
|
echo "✅ NPM tag: $NPM_TAG"
|
|
167
227
|
echo "✅ PHASE 1 COMPLETED"
|
|
@@ -176,19 +236,19 @@ phase_publish_maven() {
|
|
|
176
236
|
echo "==============================================="
|
|
177
237
|
echo "🔧 PHASE 2: PUBLISH TO MAVEN ($MODE)"
|
|
178
238
|
echo "==============================================="
|
|
179
|
-
|
|
239
|
+
|
|
180
240
|
# Get version from package.json
|
|
181
241
|
VERSION=$(node -p "require('./package.json').version")
|
|
182
242
|
export VERSION="$VERSION"
|
|
183
|
-
|
|
243
|
+
|
|
184
244
|
echo "📦 Publishing KMP artifacts to Maven (version ${VERSION})..."
|
|
185
|
-
|
|
245
|
+
|
|
186
246
|
./gradlew :compose:publishAllPublicationsToGitLabPackagesRepository
|
|
187
|
-
|
|
247
|
+
|
|
188
248
|
echo "✅ compose Maven publishing completed successfully!"
|
|
189
|
-
|
|
249
|
+
|
|
190
250
|
echo "📦 Publishing sample/shared KMP artifacts to Maven (version ${VERSION})..."
|
|
191
|
-
|
|
251
|
+
|
|
192
252
|
# Temporarily remove composeResources and compose { resources { ... } } block
|
|
193
253
|
echo "📦 Backing up sample/shared composeResources and build.gradle.kts..."
|
|
194
254
|
if [ -d "sample/shared/src/commonMain/composeResources" ]; then
|
|
@@ -200,16 +260,16 @@ phase_publish_maven() {
|
|
|
200
260
|
else
|
|
201
261
|
sed -i '/^compose {$/,/^}$/d' sample/shared/build.gradle.kts
|
|
202
262
|
fi
|
|
203
|
-
|
|
263
|
+
|
|
204
264
|
./gradlew :sample:shared:publishAllPublicationsToGitLabPackagesRepository
|
|
205
|
-
|
|
265
|
+
|
|
206
266
|
# Restore composeResources and build.gradle.kts
|
|
207
267
|
echo "📦 Restoring sample/shared composeResources and build.gradle.kts..."
|
|
208
268
|
mv sample/shared/build.gradle.kts.backup sample/shared/build.gradle.kts
|
|
209
269
|
if [ -d "sample/shared/src/commonMain/composeResources.backup" ]; then
|
|
210
270
|
mv sample/shared/src/commonMain/composeResources.backup sample/shared/src/commonMain/composeResources
|
|
211
271
|
fi
|
|
212
|
-
|
|
272
|
+
|
|
213
273
|
echo "✅ sample/shared Maven publishing completed successfully!"
|
|
214
274
|
echo "✅ PHASE 2 COMPLETED"
|
|
215
275
|
echo ""
|
|
@@ -223,13 +283,13 @@ phase_publish_npm() {
|
|
|
223
283
|
echo "==============================================="
|
|
224
284
|
echo "📦 PHASE 3: PUBLISH TO NPM ($MODE)"
|
|
225
285
|
echo "==============================================="
|
|
226
|
-
|
|
286
|
+
|
|
227
287
|
# Get version from package.json
|
|
228
288
|
VERSION=$(node -p "require('./package.json').version")
|
|
229
289
|
export VERSION="$VERSION"
|
|
230
|
-
|
|
290
|
+
|
|
231
291
|
echo "📦 Version from package.json: $VERSION"
|
|
232
|
-
|
|
292
|
+
|
|
233
293
|
# Determine NPM tag (should already be set from phase 1, but fallback just in case)
|
|
234
294
|
if [ -z "$NPM_TAG" ]; then
|
|
235
295
|
echo "⚠️ NPM_TAG not set, re-detecting..."
|
|
@@ -249,36 +309,36 @@ phase_publish_npm() {
|
|
|
249
309
|
else
|
|
250
310
|
echo "✅ NPM_TAG already set: $NPM_TAG"
|
|
251
311
|
fi
|
|
252
|
-
|
|
312
|
+
|
|
253
313
|
echo "📦 Publishing version: $VERSION"
|
|
254
314
|
echo "🏷️ NPM tag: $NPM_TAG"
|
|
255
|
-
|
|
315
|
+
|
|
256
316
|
./gradlew clean
|
|
257
|
-
|
|
317
|
+
|
|
258
318
|
# ============================================================
|
|
259
319
|
# FIRST PUBLISH: DEBUG VERSION (with compose kits included)
|
|
260
320
|
# ============================================================
|
|
261
321
|
echo ""
|
|
262
322
|
echo "🔧 Preparing debug version with compose kits..."
|
|
263
|
-
|
|
323
|
+
|
|
264
324
|
# Create debug version
|
|
265
325
|
DEBUG_VERSION="${VERSION}-debug"
|
|
266
326
|
echo "📦 Debug version: $DEBUG_VERSION"
|
|
267
|
-
|
|
327
|
+
|
|
268
328
|
# Get current version from package.json (in case it's different from $VERSION)
|
|
269
329
|
CURRENT_PKG_VERSION=$(node -p "require('./package.json').version")
|
|
270
|
-
|
|
330
|
+
|
|
271
331
|
# Update package.json version to debug version
|
|
272
332
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
273
333
|
sed -i '' "s/\"version\": \"$CURRENT_PKG_VERSION\"/\"version\": \"$DEBUG_VERSION\"/" package.json
|
|
274
334
|
else
|
|
275
335
|
sed -i "s/\"version\": \"$CURRENT_PKG_VERSION\"/\"version\": \"$DEBUG_VERSION\"/" package.json
|
|
276
336
|
fi
|
|
277
|
-
|
|
337
|
+
|
|
278
338
|
# Backup compose/build.gradle.kts
|
|
279
339
|
echo "📦 Backing up compose/build.gradle.kts..."
|
|
280
340
|
cp compose/build.gradle.kts compose/build.gradle.kts.backup
|
|
281
|
-
|
|
341
|
+
|
|
282
342
|
# Comment out maven publish in compose/build.gradle.kts
|
|
283
343
|
echo "💬 Commenting out maven publish in compose/build.gradle.kts..."
|
|
284
344
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
@@ -294,7 +354,7 @@ phase_publish_npm() {
|
|
|
294
354
|
sed -i '/^publishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
|
|
295
355
|
sed -i '/^mavenPublishing {$/,/^}$/s/^/\/\/ /' compose/build.gradle.kts
|
|
296
356
|
fi
|
|
297
|
-
|
|
357
|
+
|
|
298
358
|
# Modify android configuration for debug version
|
|
299
359
|
echo "🔧 Modifying android configuration for debug version..."
|
|
300
360
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
@@ -308,10 +368,10 @@ phase_publish_npm() {
|
|
|
308
368
|
sed -i 's/minSdk = libs\.versions\.android\.minSdk\.get()\.toInt()/minSdk = 24/' compose/build.gradle.kts
|
|
309
369
|
sed -i "s/version = gitlabVersion/version = \"$DEBUG_VERSION\"/" compose/build.gradle.kts
|
|
310
370
|
fi
|
|
311
|
-
|
|
371
|
+
|
|
312
372
|
# Backup .npmignore
|
|
313
373
|
cp .npmignore .npmignore.backup
|
|
314
|
-
|
|
374
|
+
|
|
315
375
|
# Create minimal .npmignore for debug version
|
|
316
376
|
cat > .npmignore << 'EOF'
|
|
317
377
|
sample/
|
|
@@ -327,20 +387,20 @@ build/
|
|
|
327
387
|
.gitlab-ci.yml
|
|
328
388
|
.npmignore.backup
|
|
329
389
|
EOF
|
|
330
|
-
|
|
390
|
+
|
|
331
391
|
echo "📤 Publishing debug version (with compose)..."
|
|
332
392
|
npm publish --tag $NPM_TAG --access=public
|
|
333
|
-
|
|
393
|
+
|
|
334
394
|
echo "✅ Debug version published successfully!"
|
|
335
|
-
|
|
395
|
+
|
|
336
396
|
# Restore .npmignore
|
|
337
397
|
mv .npmignore.backup .npmignore
|
|
338
398
|
echo "✅ .npmignore restored"
|
|
339
|
-
|
|
399
|
+
|
|
340
400
|
# Restore compose/build.gradle.kts
|
|
341
401
|
mv compose/build.gradle.kts.backup compose/build.gradle.kts
|
|
342
402
|
echo "✅ compose/build.gradle.kts restored"
|
|
343
|
-
|
|
403
|
+
|
|
344
404
|
# Restore package.json version to original
|
|
345
405
|
# Verify current version is debug version before restoring
|
|
346
406
|
CURRENT_VERSION_CHECK=$(node -p "require('./package.json').version")
|
|
@@ -360,16 +420,16 @@ EOF
|
|
|
360
420
|
sed -i "s/\"version\": \"$CURRENT_VERSION_CHECK\"/\"version\": \"$VERSION\"/" package.json
|
|
361
421
|
fi
|
|
362
422
|
fi
|
|
363
|
-
|
|
423
|
+
|
|
364
424
|
# ============================================================
|
|
365
425
|
# SECOND PUBLISH: NORMAL VERSION (without compose)
|
|
366
426
|
# ============================================================
|
|
367
427
|
echo ""
|
|
368
428
|
echo "📤 Publishing normal version (without compose)..."
|
|
369
429
|
npm publish --tag $NPM_TAG --access=public
|
|
370
|
-
|
|
430
|
+
|
|
371
431
|
echo "✅ Normal version published successfully!"
|
|
372
|
-
|
|
432
|
+
|
|
373
433
|
echo ""
|
|
374
434
|
echo "✅ PHASE 3 COMPLETED"
|
|
375
435
|
echo " 🐛 Debug version: $DEBUG_VERSION (with compose) - Published first"
|
|
@@ -384,6 +444,9 @@ EOF
|
|
|
384
444
|
|
|
385
445
|
echo ""
|
|
386
446
|
echo "🚀 PUBLISH SCRIPT - MODE: $(echo $MODE | tr '[:lower:]' '[:upper:]')"
|
|
447
|
+
if [ "$MODE" == "release" ]; then
|
|
448
|
+
if [ "$BUMP_MINOR" = true ]; then echo " Bump: MINOR (--bump)"; else echo " Bump: PATCH (default)"; fi
|
|
449
|
+
fi
|
|
387
450
|
echo "================================================="
|
|
388
451
|
|
|
389
452
|
case "$PHASE" in
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import org.gradle.kotlin.dsl.maven
|
|
2
|
+
|
|
3
|
+
rootProject.name = "momo-native-kits"
|
|
4
|
+
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
|
|
5
|
+
|
|
6
|
+
pluginManagement {
|
|
7
|
+
repositories {
|
|
8
|
+
google {
|
|
9
|
+
mavenContent {
|
|
10
|
+
includeGroupAndSubgroups("androidx")
|
|
11
|
+
includeGroupAndSubgroups("com.android")
|
|
12
|
+
includeGroupAndSubgroups("com.google")
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
mavenCentral()
|
|
16
|
+
gradlePluginPortal()
|
|
17
|
+
maven {
|
|
18
|
+
url = uri("https://gitlab.mservice.com.vn/api/v4/projects/5400/packages/maven")
|
|
19
|
+
credentials {username = "download_packages"; password = "gldt-bjDqLpU_sPcHDuXau2ws" }
|
|
20
|
+
}
|
|
21
|
+
maven {
|
|
22
|
+
url = uri("https://artifacts.mservice.com.vn/repository/maven-momo-app/")
|
|
23
|
+
credentials {
|
|
24
|
+
username = "viewer"
|
|
25
|
+
password = "viewer"
|
|
26
|
+
}
|
|
27
|
+
isAllowInsecureProtocol = true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
dependencyResolutionManagement {
|
|
33
|
+
repositories {
|
|
34
|
+
google {
|
|
35
|
+
mavenContent {
|
|
36
|
+
includeGroupAndSubgroups("androidx")
|
|
37
|
+
includeGroupAndSubgroups("com.android")
|
|
38
|
+
includeGroupAndSubgroups("com.google")
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
mavenCentral()
|
|
42
|
+
maven { url = uri("https://maven.pkg.jetbrains.space/public/p/compose/dev") }
|
|
43
|
+
maven {
|
|
44
|
+
url = uri("https://gitlab.mservice.com.vn/api/v4/projects/5400/packages/maven")
|
|
45
|
+
credentials {
|
|
46
|
+
username = "download_packages";
|
|
47
|
+
password = "gldt-bjDqLpU_sPcHDuXau2ws"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
maven {
|
|
51
|
+
url = uri("https://artifacts.mservice.com.vn/repository/maven-momo-app/")
|
|
52
|
+
credentials {
|
|
53
|
+
username = "viewer"
|
|
54
|
+
password = "viewer"
|
|
55
|
+
}
|
|
56
|
+
isAllowInsecureProtocol = true
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
include(":compose")
|
|
62
|
+
|
|
63
|
+
include(":sample:androidApp")
|
|
64
|
+
include(":sample:shared")
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
-
<plist version="1.0">
|
|
4
|
-
<dict>
|
|
5
|
-
<key>SchemeUserState</key>
|
|
6
|
-
<dict>
|
|
7
|
-
<key>Example.xcscheme_^#shared#^_</key>
|
|
8
|
-
<dict>
|
|
9
|
-
<key>orderHint</key>
|
|
10
|
-
<integer>0</integer>
|
|
11
|
-
</dict>
|
|
12
|
-
</dict>
|
|
13
|
-
</dict>
|
|
14
|
-
</plist>
|
|
Binary file
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<Scheme
|
|
3
|
-
LastUpgradeVersion = "1600"
|
|
4
|
-
version = "1.3">
|
|
5
|
-
<BuildAction
|
|
6
|
-
parallelizeBuildables = "YES"
|
|
7
|
-
buildImplicitDependencies = "YES">
|
|
8
|
-
<BuildActionEntries>
|
|
9
|
-
<BuildActionEntry
|
|
10
|
-
buildForTesting = "YES"
|
|
11
|
-
buildForRunning = "YES"
|
|
12
|
-
buildForProfiling = "YES"
|
|
13
|
-
buildForArchiving = "YES"
|
|
14
|
-
buildForAnalyzing = "YES">
|
|
15
|
-
<BuildableReference
|
|
16
|
-
BuildableIdentifier = "primary"
|
|
17
|
-
BlueprintIdentifier = "3B6FB503A75BF5BC1FA6F30BC06B9D28"
|
|
18
|
-
BuildableName = "MoMoUIKits.framework"
|
|
19
|
-
BlueprintName = "MoMoUIKits"
|
|
20
|
-
ReferencedContainer = "container:Pods.xcodeproj">
|
|
21
|
-
</BuildableReference>
|
|
22
|
-
</BuildActionEntry>
|
|
23
|
-
</BuildActionEntries>
|
|
24
|
-
</BuildAction>
|
|
25
|
-
<TestAction
|
|
26
|
-
buildConfiguration = "Debug"
|
|
27
|
-
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
|
28
|
-
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
|
29
|
-
shouldUseLaunchSchemeArgsEnv = "YES">
|
|
30
|
-
<Testables>
|
|
31
|
-
</Testables>
|
|
32
|
-
</TestAction>
|
|
33
|
-
<LaunchAction
|
|
34
|
-
buildConfiguration = "Debug"
|
|
35
|
-
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
|
36
|
-
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
|
37
|
-
launchStyle = "0"
|
|
38
|
-
useCustomWorkingDirectory = "NO"
|
|
39
|
-
ignoresPersistentStateOnLaunch = "NO"
|
|
40
|
-
debugDocumentVersioning = "YES"
|
|
41
|
-
debugServiceExtension = "internal"
|
|
42
|
-
allowLocationSimulation = "YES">
|
|
43
|
-
</LaunchAction>
|
|
44
|
-
<ProfileAction
|
|
45
|
-
buildConfiguration = "Release"
|
|
46
|
-
shouldUseLaunchSchemeArgsEnv = "YES"
|
|
47
|
-
savedToolIdentifier = ""
|
|
48
|
-
useCustomWorkingDirectory = "NO"
|
|
49
|
-
debugDocumentVersioning = "YES">
|
|
50
|
-
</ProfileAction>
|
|
51
|
-
<AnalyzeAction
|
|
52
|
-
buildConfiguration = "Debug">
|
|
53
|
-
</AnalyzeAction>
|
|
54
|
-
<ArchiveAction
|
|
55
|
-
buildConfiguration = "Release"
|
|
56
|
-
revealArchiveInOrganizer = "YES">
|
|
57
|
-
</ArchiveAction>
|
|
58
|
-
</Scheme>
|