@momo-kits/native-kits 0.165.2-beta.2-debug → 0.167.1-beta.3-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 (24) hide show
  1. package/compose/build.gradle.kts +1 -1
  2. package/compose/compose.podspec +1 -1
  3. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/StackScreen.kt +33 -47
  4. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/Header.kt +28 -1
  5. package/compose/src/commonMain/kotlin/vn/momo/kits/navigation/component/HeaderBackground.kt +3 -1
  6. package/gradle.properties +1 -1
  7. package/ios/native-kits.podspec +1 -1
  8. package/ios-demo/MoMoUIKitsDemo.podspec +1 -1
  9. package/package.json +1 -1
  10. package/example/ios/Example.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/Example.xcscheme +0 -32
  11. package/example/ios/Example.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  12. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  13. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/WorkspaceSettings.xcsettings +0 -16
  14. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +0 -6
  15. package/example/ios/Example.xcworkspace/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +0 -5
  16. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +0 -58
  17. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/Pods-Example.xcscheme +0 -58
  18. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SDWebImage.xcscheme +0 -58
  19. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +0 -58
  20. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/SkeletonUI.xcscheme +0 -58
  21. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/lottie-ios-LottiePrivacyInfo.xcscheme +0 -58
  22. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/lottie-ios.xcscheme +0 -58
  23. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/sonnguyen.xcuserdatad/xcschemes/xcschememanagement.plist +0 -60
  24. package/local.properties +0 -8
@@ -40,7 +40,7 @@ kotlin {
40
40
  }
41
41
 
42
42
  cocoapods {
43
- version = "0.165.2-beta.2-debug"
43
+ version = "0.167.1-beta.3-debug"
44
44
  summary = "IOS Shared module"
45
45
  homepage = "https://momo.vn"
46
46
  ios.deploymentTarget = "15.0"
@@ -1,6 +1,6 @@
1
1
  Pod::Spec.new do |spec|
2
2
  spec.name = 'compose'
3
- spec.version = '0.165.2-beta.2-debug'
3
+ spec.version = '0.167.1-beta.2-debug'
4
4
  spec.homepage = 'https://momo.vn'
5
5
  spec.source = { :http=> ''}
6
6
  spec.authors = ''
@@ -1,11 +1,11 @@
1
1
  package vn.momo.kits.navigation
2
2
 
3
3
  import androidx.compose.animation.animateColorAsState
4
- import androidx.compose.animation.core.animateDpAsState
5
4
  import androidx.compose.foundation.ScrollState
6
5
  import androidx.compose.foundation.background
7
6
  import androidx.compose.foundation.border
8
7
  import androidx.compose.foundation.gestures.ScrollableState
8
+ import androidx.compose.foundation.gestures.animateScrollBy
9
9
  import androidx.compose.foundation.layout.Box
10
10
  import androidx.compose.foundation.layout.Column
11
11
  import androidx.compose.foundation.layout.ColumnScope
@@ -21,7 +21,6 @@ import androidx.compose.foundation.layout.imePadding
21
21
  import androidx.compose.foundation.layout.offset
22
22
  import androidx.compose.foundation.layout.padding
23
23
  import androidx.compose.foundation.lazy.LazyListState
24
- import androidx.compose.foundation.lazy.rememberLazyListState
25
24
  import androidx.compose.foundation.rememberScrollState
26
25
  import androidx.compose.foundation.verticalScroll
27
26
  import androidx.compose.material.ExperimentalMaterialApi
@@ -45,8 +44,11 @@ import androidx.compose.ui.layout.onGloballyPositioned
45
44
  import androidx.compose.ui.platform.LocalDensity
46
45
  import androidx.compose.ui.unit.Dp
47
46
  import androidx.compose.ui.unit.dp
47
+ import androidx.compose.ui.unit.lerp
48
48
  import androidx.compose.ui.zIndex
49
49
  import kotlinx.coroutines.flow.Flow
50
+ import kotlinx.coroutines.flow.filter
51
+ import kotlinx.coroutines.launch
50
52
  import vn.momo.kits.components.InputSearch
51
53
  import vn.momo.kits.const.AppNavigationBar
52
54
  import vn.momo.kits.const.AppStatusBar
@@ -154,13 +156,15 @@ internal fun StackScreen(
154
156
  }
155
157
 
156
158
  val limit = with(density) {
157
- (statusBar).toPx() + HEADER_HEIGHT
159
+ (statusBar + HEADER_HEIGHT.dp).toPx()
158
160
  }.toInt()
159
161
 
160
- val (scrollState, scrollInProcess) = if (options.scrollData.scrollState is LazyListState)
161
- (options.scrollData.scrollState as? LazyListState ?: rememberLazyListState()).proxyScrollState(limit, 15)
162
+ val lazyListState = options.scrollData.scrollState as? LazyListState
163
+ val (scrollState, _) = if (lazyListState != null)
164
+ lazyListState.proxyScrollState(limit, 1)
162
165
  else
163
- (options.scrollData.scrollState as? ScrollState ?: rememberScrollState()).proxyLimitedScrollState(limit, 15)
166
+ (options.scrollData.scrollState as? ScrollState ?: rememberScrollState()).proxyLimitedScrollState(limit, 1)
167
+ val snapState: ScrollableState = lazyListState ?: scrollState
164
168
 
165
169
  val footerHeightPx = remember { mutableIntStateOf(0) }
166
170
  val headerRightWidthPx = remember { mutableIntStateOf(0) }
@@ -205,7 +209,7 @@ internal fun StackScreen(
205
209
  }
206
210
 
207
211
  Column(Modifier.zIndex(5f)) {
208
- SearchAnimated(isScrollInProgress = scrollInProcess)
212
+ SearchAnimated(snapState = snapState)
209
213
  }
210
214
 
211
215
  Column(Modifier.zIndex(2f).fillMaxSize()) {
@@ -269,11 +273,7 @@ internal fun ColumnScope.MainContent(content: @Composable () -> Unit, isBottomTa
269
273
  if (inputSearchType == InputSearchType.Animated) {
270
274
  val scrollDp = with(density) { scrollState.value.toDp() }
271
275
 
272
- val animatedTopPadding by animateDpAsState(
273
- targetValue = (HEADER_HEIGHT.dp - scrollDp).coerceIn(0.dp, HEADER_HEIGHT.dp),
274
- label = "AnimatedTopPadding"
275
- )
276
- Spacer(Modifier.height(animatedTopPadding))
276
+ Spacer(Modifier.height((HEADER_HEIGHT.dp - scrollDp).coerceIn(0.dp, HEADER_HEIGHT.dp)))
277
277
  }
278
278
  Column(
279
279
  Modifier
@@ -413,7 +413,7 @@ data class InputSearchLayoutParams(
413
413
  @Suppress("FrequentlyChangingValue")
414
414
  @Composable
415
415
  internal fun SearchAnimated(
416
- isScrollInProgress: Boolean
416
+ snapState: ScrollableState
417
417
  ) {
418
418
  val scrollState = LocalScrollState.current
419
419
  val options = LocalOptions.current
@@ -453,44 +453,24 @@ internal fun SearchAnimated(
453
453
  }
454
454
 
455
455
  InputSearchType.Animated -> {
456
- val animatedTopPadding by animateDpAsState(
457
- targetValue = (maxTopPadding - scrollDp).coerceIn(minTopPadding, maxTopPadding),
458
- label = "AnimatedTopPadding"
459
- )
460
-
461
- val animatedStartPadding by animateDpAsState(
462
- targetValue = (minStartPadding + scrollDp).coerceIn(minStartPadding, maxStartPadding),
463
- label = "AnimatedStartPadding"
464
- )
465
-
466
- val animatedEndPadding by animateDpAsState(
467
- targetValue = (minEndPadding + scrollDp).coerceIn(minEndPadding, maxEndPadding),
468
- label = "AnimatedEndPadding"
469
- )
470
-
471
- val maxPadding = remember(maxTopPadding, maxStartPadding, maxEndPadding) {
472
- maxOf(maxEndPadding, maxStartPadding, maxTopPadding)
473
- }
474
- val snapScrollValue = with(density) { maxPadding.toPx().toInt() }
475
-
476
- LaunchedEffect(isScrollInProgress && scrollState.value != 0 && scrollState.value != snapScrollValue) {
477
- if (scrollDp < maxPadding) {
478
- if (!isScrollInProgress) {
479
- val midpoint = (maxTopPadding - minTopPadding) / 2
480
-
481
- if (scrollDp < midpoint) {
482
- scrollState.animateScrollTo(0)
483
- } else {
484
- scrollState.animateScrollTo(snapScrollValue)
485
- }
456
+ val collapsePx = with(density) { HEADER_HEIGHT.dp.roundToPx() }
457
+ val progress = (scrollState.value / collapsePx.toFloat()).coerceIn(0f, 1f)
458
+
459
+ LaunchedEffect(snapState, collapsePx) {
460
+ snapshotFlow { snapState.isScrollInProgress }
461
+ .filter { !it }
462
+ .collect {
463
+ val offset = snapState.headerOffsetPx() ?: return@collect
464
+ if (offset <= 0 || offset >= collapsePx) return@collect
465
+ val target = if (offset < collapsePx / 2) 0 else collapsePx
466
+ launch { snapState.animateScrollBy((target - offset).toFloat()) }
486
467
  }
487
- }
488
468
  }
489
469
 
490
470
  InputSearchLayoutParams(
491
- topPadding = animatedTopPadding,
492
- startPadding = animatedStartPadding,
493
- endPadding = animatedEndPadding
471
+ topPadding = lerp(maxTopPadding, minTopPadding, progress),
472
+ startPadding = lerp(minStartPadding, maxStartPadding, progress),
473
+ endPadding = lerp(minEndPadding, maxEndPadding, progress)
494
474
  )
495
475
  }
496
476
 
@@ -519,6 +499,12 @@ internal fun SearchAnimated(
519
499
  }
520
500
  }
521
501
 
502
+ private fun ScrollableState.headerOffsetPx(): Int? = when (this) {
503
+ is LazyListState -> if (firstVisibleItemIndex == 0) firstVisibleItemScrollOffset else null
504
+ is ScrollState -> value
505
+ else -> null
506
+ }
507
+
522
508
  private fun quantize(value: Int, stepPx: Int): Int {
523
509
  if (stepPx <= 1) return value
524
510
  return (value / stepPx) * stepPx
@@ -15,11 +15,14 @@ import androidx.compose.foundation.layout.offset
15
15
  import androidx.compose.foundation.layout.padding
16
16
  import androidx.compose.foundation.layout.size
17
17
  import androidx.compose.foundation.layout.width
18
+ import androidx.compose.foundation.layout.wrapContentHeight
18
19
  import androidx.compose.foundation.shape.RoundedCornerShape
19
20
  import androidx.compose.runtime.Composable
20
21
  import androidx.compose.runtime.getValue
21
22
  import androidx.compose.ui.Alignment
22
23
  import androidx.compose.ui.Modifier
24
+ import androidx.compose.ui.draw.clipToBounds
25
+ import androidx.compose.ui.graphics.graphicsLayer
23
26
  import androidx.compose.ui.graphics.Brush
24
27
  import androidx.compose.ui.graphics.Color
25
28
  import androidx.compose.ui.layout.onGloballyPositioned
@@ -28,6 +31,7 @@ import androidx.compose.ui.text.style.TextAlign
28
31
  import androidx.compose.ui.unit.Dp
29
32
  import androidx.compose.ui.unit.dp
30
33
  import vn.momo.kits.components.Icon
34
+ import vn.momo.kits.components.Image
31
35
  import vn.momo.kits.components.InputSearchProps
32
36
  import vn.momo.kits.const.AppStatusBar
33
37
  import vn.momo.kits.const.AppTheme
@@ -88,15 +92,38 @@ internal fun Header(onBackHandler: (() -> Unit)? = null) {
88
92
  // Centered title needs a full-width overlay to stay screen-centered, not boxed between back button and header right.
89
93
  val centerTitle = titlePosition == TitlePosition.CENTER && options.headerTitle is HeaderTitle.Default
90
94
 
95
+ val headerImage = AppTheme.current.assets.headerBackground
96
+ .takeUnless { options.headerType is HeaderType.Transparent }
97
+
91
98
  Box(
92
99
  Modifier.height(AppStatusBar.current + HEADER_HEIGHT.dp)
93
100
  .fillMaxWidth()
94
- .background(background.copy(alpha = animatedAlpha))
101
+ .conditional(headerImage.isNullOrEmpty()) {
102
+ background(background.copy(alpha = animatedAlpha))
103
+ }
95
104
  .conditional(IsShowBaseLineDebug) {
96
105
  border(1.dp, Colors.blue_03)
97
106
  },
98
107
  contentAlignment = Alignment.BottomCenter
99
108
  ) {
109
+ if (!headerImage.isNullOrEmpty()) {
110
+ Box(
111
+ Modifier
112
+ .matchParentSize()
113
+ .clipToBounds()
114
+ .graphicsLayer { alpha = animatedAlpha }
115
+ .background(background)
116
+ ) {
117
+ Image(
118
+ source = headerImage,
119
+ loading = false,
120
+ modifier = Modifier
121
+ .fillMaxWidth()
122
+ .wrapContentHeight(Alignment.Top, unbounded = true)
123
+ .height(HEADER_BACKGROUND_HEIGHT),
124
+ )
125
+ }
126
+ }
100
127
  Row(
101
128
  modifier = Modifier.height(HEADER_HEIGHT.dp)
102
129
  .fillMaxWidth()
@@ -27,6 +27,8 @@ enum class AnimatedHeaderRatio(val value: Float){
27
27
  RATIO_3_2(3f / 2f)
28
28
  }
29
29
 
30
+ internal val HEADER_BACKGROUND_HEIGHT = 154.dp
31
+
30
32
  @Suppress("FrequentlyChangingValue")
31
33
  @Composable
32
34
  internal fun HeaderBackground() {
@@ -37,7 +39,7 @@ internal fun HeaderBackground() {
37
39
  val backgroundColor = options.backgroundColor ?: AppTheme.current.colors.background.default
38
40
 
39
41
  val minHeight = AppStatusBar.current + HEADER_HEIGHT.dp
40
- val maxHeight = 154.dp
42
+ val maxHeight = HEADER_BACKGROUND_HEIGHT
41
43
  val opacity by animateFloatAsState(
42
44
  targetValue = (1 - (scrollState.value * 1f / HEADER_HEIGHT * 1f)).coerceIn(0f, 1f),
43
45
  )
package/gradle.properties CHANGED
@@ -18,7 +18,7 @@ kotlin.apple.xcodeCompatibility.nowarn=true
18
18
  name="ComposeKits"
19
19
  group=vn.momo.kits
20
20
  artifact.id=kits
21
- version=0.165.2-beta.2
21
+ version=0.167.1-beta.2
22
22
 
23
23
  repo=GitLab
24
24
  url=https://gitlab.mservice.com.vn/api/v4/projects/5400/packages/maven
@@ -1,6 +1,6 @@
1
1
  Pod::Spec.new do |s|
2
2
  s.name = 'MoMoUIKits'
3
- s.version = '0.165.2-beta.2'
3
+ s.version = '0.167.1-beta.2'
4
4
  s.summary = 'MoMoUIKits for iOS'
5
5
  s.homepage = 'https://momo.vn'
6
6
  s.license = { :type => 'MIT' }
@@ -1,6 +1,6 @@
1
1
  Pod::Spec.new do |s|
2
2
  s.name = 'MoMoUIKitsDemo'
3
- s.version = '0.165.2-beta.2'
3
+ s.version = '0.167.1-beta.2'
4
4
  s.summary = 'Demo browser for MoMoUIKits SwiftUI components'
5
5
  s.homepage = 'https://momo.vn'
6
6
  s.license = { :type => 'MIT' }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@momo-kits/native-kits",
3
- "version": "0.165.2-beta.2-debug",
3
+ "version": "0.167.1-beta.3-debug",
4
4
  "private": false,
5
5
  "dependeNavigationncies": {},
6
6
  "devDependencies": {},
@@ -1,32 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Scheme
3
- version = "1.3">
4
- <BuildAction>
5
- <BuildActionEntries>
6
- <BuildActionEntry
7
- buildForRunning = "YES">
8
- <BuildableReference
9
- BuildableIdentifier = "primary"
10
- BlueprintIdentifier = "A6A920D22B2ADD1E00C1A11F"
11
- BuildableName = "Example"
12
- BlueprintName = "Example"
13
- ReferencedContainer = "container:Example.xcodeproj">
14
- </BuildableReference>
15
- </BuildActionEntry>
16
- </BuildActionEntries>
17
- </BuildAction>
18
- <LaunchAction
19
- useCustomWorkingDirectory = "NO"
20
- buildConfiguration = "Debug"
21
- allowLocationSimulation = "YES">
22
- <BuildableProductRunnable>
23
- <BuildableReference
24
- BuildableIdentifier = "primary"
25
- BlueprintIdentifier = "A6A920D22B2ADD1E00C1A11F"
26
- BuildableName = "Example"
27
- BlueprintName = "Example"
28
- ReferencedContainer = "container:Example.xcodeproj">
29
- </BuildableReference>
30
- </BuildableProductRunnable>
31
- </LaunchAction>
32
- </Scheme>
@@ -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</key>
8
- <dict>
9
- <key>orderHint</key>
10
- <integer>7</integer>
11
- </dict>
12
- </dict>
13
- </dict>
14
- </plist>
@@ -1,16 +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>BuildLocationStyle</key>
6
- <string>UseAppPreferences</string>
7
- <key>CustomBuildLocationType</key>
8
- <string>RelativeToDerivedData</string>
9
- <key>DerivedDataCustomLocation</key>
10
- <string>DerivedData</string>
11
- <key>DerivedDataLocationStyle</key>
12
- <string>WorkspaceRelativePath</string>
13
- <key>ShowSharedSchemesAutomaticallyEnabled</key>
14
- <true/>
15
- </dict>
16
- </plist>
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Bucket
3
- uuid = "6B3C387A-E951-41D1-A42C-FB6E447A46BA"
4
- type = "0"
5
- version = "2.0">
6
- </Bucket>
@@ -1,5 +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
- </plist>
@@ -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>
@@ -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 = "0AEE99A309977BD12A049FF48AF9BA4B"
18
- BuildableName = "Pods_Example.framework"
19
- BlueprintName = "Pods-Example"
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>
@@ -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 = "3847153A6E5EEFB86565BA840768F429"
18
- BuildableName = "SDWebImage.framework"
19
- BlueprintName = "SDWebImage"
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>
@@ -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 = "92EBFA3E7005B4C18A9C0B44324EB80F"
18
- BuildableName = "SDWebImageSwiftUI.framework"
19
- BlueprintName = "SDWebImageSwiftUI"
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>
@@ -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 = "6510766A9670BFA3B251E2A62446FC5D"
18
- BuildableName = "SkeletonUI.framework"
19
- BlueprintName = "SkeletonUI"
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>
@@ -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 = "BF2A15FEC3F3424BBC4B9AD5F86F2D54"
18
- BuildableName = "LottiePrivacyInfo.bundle"
19
- BlueprintName = "lottie-ios-LottiePrivacyInfo"
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>
@@ -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 = "0B967D7F8561D42493EE289EC8D450D1"
18
- BuildableName = "Lottie.framework"
19
- BlueprintName = "lottie-ios"
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>
@@ -1,60 +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>MoMoUIKits.xcscheme</key>
8
- <dict>
9
- <key>isShown</key>
10
- <false />
11
- <key>orderHint</key>
12
- <integer>0</integer>
13
- </dict>
14
- <key>Pods-Example.xcscheme</key>
15
- <dict>
16
- <key>isShown</key>
17
- <false />
18
- <key>orderHint</key>
19
- <integer>1</integer>
20
- </dict>
21
- <key>SDWebImage.xcscheme</key>
22
- <dict>
23
- <key>isShown</key>
24
- <false />
25
- <key>orderHint</key>
26
- <integer>2</integer>
27
- </dict>
28
- <key>SDWebImageSwiftUI.xcscheme</key>
29
- <dict>
30
- <key>isShown</key>
31
- <false />
32
- <key>orderHint</key>
33
- <integer>3</integer>
34
- </dict>
35
- <key>SkeletonUI.xcscheme</key>
36
- <dict>
37
- <key>isShown</key>
38
- <false />
39
- <key>orderHint</key>
40
- <integer>4</integer>
41
- </dict>
42
- <key>lottie-ios-LottiePrivacyInfo.xcscheme</key>
43
- <dict>
44
- <key>isShown</key>
45
- <false />
46
- <key>orderHint</key>
47
- <integer>5</integer>
48
- </dict>
49
- <key>lottie-ios.xcscheme</key>
50
- <dict>
51
- <key>isShown</key>
52
- <false />
53
- <key>orderHint</key>
54
- <integer>6</integer>
55
- </dict>
56
- </dict>
57
- <key>SuppressBuildableAutocreation</key>
58
- <dict />
59
- </dict>
60
- </plist>
package/local.properties DELETED
@@ -1,8 +0,0 @@
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
- #Tue Apr 08 11:13:31 ICT 2025
8
- sdk.dir=/Users/sonnguyen/Library/Android/sdk