@lynxship/expo 0.1.2 → 0.1.5
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/README.md +9 -0
- package/android/build.gradle +18 -0
- package/lynxship-expo.podspec +9 -1
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -18,6 +18,11 @@ npx expo prebuild
|
|
|
18
18
|
npx pod-install
|
|
19
19
|
```
|
|
20
20
|
|
|
21
|
+
`@lynxship/expo` uses the `expo-modules-core` implementation supplied by the
|
|
22
|
+
installed Expo SDK. The package keeps it as a development dependency for its
|
|
23
|
+
own native-module build, so installing `@lynxship/expo` does not require a
|
|
24
|
+
second manual native dependency in the application.
|
|
25
|
+
|
|
21
26
|
When the project uses a static `app.json` or `app.config.json`, the Expo CLI
|
|
22
27
|
automatically adds `@lynxship/expo` to `expo.plugins` during `npx expo install`.
|
|
23
28
|
The plugin's defaults are safe for the first build, so no manual config edit
|
|
@@ -73,6 +78,10 @@ The endpoint must be HTTPS outside localhost. The public verification key is
|
|
|
73
78
|
safe to ship in the application; private signing keys must remain in the
|
|
74
79
|
LynxShip CLI or CI secret store.
|
|
75
80
|
|
|
81
|
+
The Android Expo module reads its native Maven version from this package's
|
|
82
|
+
`package.json`, so publishing a new package version cannot leave the Gradle
|
|
83
|
+
module on an old or missing `versionName`.
|
|
84
|
+
|
|
76
85
|
`lynxVersion` defaults to `auto`. Android resolves the current Lynx release
|
|
77
86
|
through Gradle and iOS resolves the current CocoaPods release. Gradle and
|
|
78
87
|
CocoaPods lockfiles retain the concrete versions selected by the first native
|
package/android/build.gradle
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
|
+
import groovy.json.JsonSlurper
|
|
2
|
+
|
|
1
3
|
plugins {
|
|
2
4
|
id "com.android.library"
|
|
5
|
+
id "expo-module-gradle-plugin"
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
def packageJsonFile = file("../package.json")
|
|
9
|
+
if (!packageJsonFile.isFile()) {
|
|
10
|
+
throw new GradleException("@lynxship/expo package.json is missing")
|
|
3
11
|
}
|
|
12
|
+
def packageJson = new JsonSlurper().parseText(packageJsonFile.text)
|
|
13
|
+
def moduleVersion = packageJson.version?.toString()
|
|
14
|
+
if (!moduleVersion) {
|
|
15
|
+
throw new GradleException("@lynxship/expo package.json does not define a version")
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
group = "com.lynxship.expo"
|
|
19
|
+
version = moduleVersion
|
|
4
20
|
|
|
5
21
|
// `latest.release` is used only when the app does not provide an exact
|
|
6
22
|
// version. Gradle dependency locking then records the resolved version for
|
|
@@ -12,6 +28,8 @@ android {
|
|
|
12
28
|
compileSdk 35
|
|
13
29
|
|
|
14
30
|
defaultConfig {
|
|
31
|
+
versionCode 1
|
|
32
|
+
versionName moduleVersion
|
|
15
33
|
minSdk 24
|
|
16
34
|
consumerProguardFiles "consumer-rules.pro"
|
|
17
35
|
}
|
package/lynxship-expo.podspec
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
require 'json'
|
|
2
|
+
|
|
3
|
+
package_json_path = File.join(__dir__, 'package.json')
|
|
4
|
+
raise 'LynxShip Expo package.json is missing' unless File.file?(package_json_path)
|
|
5
|
+
|
|
6
|
+
package_version = JSON.parse(File.read(package_json_path))['version']
|
|
7
|
+
raise 'LynxShip Expo package.json does not define a version' unless package_version
|
|
8
|
+
|
|
1
9
|
Pod::Spec.new do |s|
|
|
2
10
|
s.name = 'LynxShipExpo'
|
|
3
|
-
s.version =
|
|
11
|
+
s.version = package_version
|
|
4
12
|
s.summary = 'Expo native LynxView integration for LynxShip.'
|
|
5
13
|
s.license = { :type => 'MIT' }
|
|
6
14
|
s.author = { 'LynxShip' => 'opensource@lynxship.dev' }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lynxship/expo",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Expo native LynxView with LynxShip OTA delivery and cache support.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -42,10 +42,12 @@
|
|
|
42
42
|
"peerDependencies": {
|
|
43
43
|
"@expo/config-plugins": ">=9",
|
|
44
44
|
"expo": ">=52",
|
|
45
|
-
"expo-modules-core": ">=1",
|
|
46
45
|
"react": ">=18",
|
|
47
46
|
"react-native": ">=0.76"
|
|
48
47
|
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"expo-modules-core": "57.0.13"
|
|
50
|
+
},
|
|
49
51
|
"dependencies": {
|
|
50
52
|
"@lynxship/sdk-android": "0.1.0",
|
|
51
53
|
"@lynxship/sdk-ios": "0.1.0"
|