@microsoft/power-apps-native-host 0.3.0 → 0.4.0

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 (66) hide show
  1. package/README.md +1 -9
  2. package/compatibility/current.json +31 -3
  3. package/lib/NOTICE.txt +1323 -16
  4. package/lib/commonjs/auth/AuthContext.js +36 -15
  5. package/lib/commonjs/config/babelConfig.js +13 -0
  6. package/lib/commonjs/config/expoConfig.js +71 -0
  7. package/lib/commonjs/config/metroConfig.js +70 -0
  8. package/lib/commonjs/config/metroLogger.js +182 -0
  9. package/lib/commonjs/config/tamaguiConfig.js +98 -0
  10. package/lib/commonjs/connections/resolveConnections.js +3 -2
  11. package/lib/commonjs/connections/useConnectionRefs.js +3 -1
  12. package/lib/commonjs/index.js +3 -2
  13. package/lib/commonjs/offline/useOfflineIntegrationWithStartupGate.js +3 -1
  14. package/lib/commonjs/platform/DataverseDataSources.js +4 -0
  15. package/lib/commonjs/platform/DataverseGlobalDiscoveryApi.js +45 -0
  16. package/lib/commonjs/provider/PowerAppsHostProvider.js +1 -0
  17. package/lib/commonjs/provider/PowerAppsProvider.js +13 -8
  18. package/lib/commonjs/provider/SessionDetailsGesture.js +1 -9
  19. package/lib/commonjs/telemetry/index.js +2 -2
  20. package/lib/module/auth/AuthContext.js +36 -15
  21. package/lib/module/config/babelConfig.js +9 -0
  22. package/lib/module/config/expoConfig.js +67 -0
  23. package/lib/module/config/metroConfig.js +65 -0
  24. package/{scripts/metro-logger.js → lib/module/config/metroLogger.js} +58 -96
  25. package/lib/module/config/tamaguiConfig.js +93 -0
  26. package/lib/module/connections/resolveConnections.js +3 -2
  27. package/lib/module/connections/useConnectionRefs.js +3 -1
  28. package/lib/module/index.js +5 -1
  29. package/lib/module/offline/useOfflineIntegrationWithStartupGate.js +3 -1
  30. package/lib/module/platform/DataverseDataSources.js +3 -0
  31. package/lib/module/platform/DataverseGlobalDiscoveryApi.js +44 -0
  32. package/lib/module/provider/PowerAppsHostProvider.js +2 -1
  33. package/lib/module/provider/PowerAppsProvider.js +14 -9
  34. package/lib/module/provider/SessionDetailsGesture.js +1 -9
  35. package/lib/module/telemetry/index.js +1 -1
  36. package/lib/typescript/commonjs/config/babelConfig.d.ts +12 -0
  37. package/lib/typescript/commonjs/config/expoConfig.d.ts +21 -0
  38. package/lib/typescript/commonjs/config/metroConfig.d.ts +6 -0
  39. package/lib/typescript/commonjs/config/metroLogger.d.ts +21 -0
  40. package/lib/typescript/commonjs/config/tamaguiConfig.d.ts +1792 -0
  41. package/lib/typescript/commonjs/connections/resolveConnections.d.ts +3 -1
  42. package/lib/typescript/commonjs/connections/useConnectionRefs.d.ts +3 -1
  43. package/lib/typescript/commonjs/index.d.ts +4 -3
  44. package/lib/typescript/commonjs/platform/DataverseDataSources.d.ts +1 -0
  45. package/lib/typescript/commonjs/provider/PowerAppsProvider.d.ts +28 -5
  46. package/lib/typescript/commonjs/telemetry/index.d.ts +2 -2
  47. package/lib/typescript/module/config/babelConfig.d.ts +12 -0
  48. package/lib/typescript/module/config/expoConfig.d.ts +21 -0
  49. package/lib/typescript/module/config/metroConfig.d.ts +6 -0
  50. package/lib/typescript/module/config/metroLogger.d.ts +21 -0
  51. package/lib/typescript/module/config/tamaguiConfig.d.ts +1792 -0
  52. package/lib/typescript/module/connections/resolveConnections.d.ts +3 -1
  53. package/lib/typescript/module/connections/useConnectionRefs.d.ts +3 -1
  54. package/lib/typescript/module/index.d.ts +4 -3
  55. package/lib/typescript/module/platform/DataverseDataSources.d.ts +1 -0
  56. package/lib/typescript/module/provider/PowerAppsProvider.d.ts +28 -5
  57. package/lib/typescript/module/telemetry/index.d.ts +2 -2
  58. package/package.json +47 -13
  59. package/scripts/build-codegen-package.js +283 -0
  60. package/scripts/start-web.mjs +9 -5
  61. package/scripts/upgrade/runtime.js +126 -17
  62. package/scripts/upgrade-authoring.js +274 -179
  63. package/scripts/upgrade.js +10 -16
  64. package/src/config/generated-config.d.ts +4 -0
  65. package/src/config/index.d.ts +3 -0
  66. package/src/config/tsconfig.json +26 -0
package/README.md CHANGED
@@ -107,14 +107,6 @@ runs Expo validation. If another version is available, run the command again.
107
107
  The current version is stored in `app.json` under
108
108
  `expo.extra.powerappsNative`; do not edit this object.
109
109
 
110
- Apps created before this version file existed must specify their source template
111
- version:
112
-
113
- ```bash
114
- npx --package @microsoft/power-apps-native-host@latest \
115
- upgrade-template --from-version 1
116
- ```
117
-
118
110
  The upgrader never changes `app/`, `src/`, `android/`, or `ios/`. If a root
119
111
  configuration change conflicts with your customization, it writes a `.rej` file
120
112
  for manual resolution. Failed validation restores files managed by the upgrade.
@@ -164,7 +156,7 @@ See `src/index.ts` for the full exported API.
164
156
  ## Metro Logger
165
157
 
166
158
  Metro configuration can import the Node-only logger from
167
- `@microsoft/power-apps-native-host/metro-logger`. Pass `projectRoot` when
159
+ `@microsoft/power-apps-native-host/config/metroLogger`. Pass `projectRoot` when
168
160
  wrapping middleware. An optional `onError(error, context)` callback receives the
169
161
  first instrumentation failure for that project; `context` contains `phase` and
170
162
  `logPath`. The callback is invoked at most once so diagnostics cannot recurse.
@@ -2,14 +2,25 @@
2
2
  "schemaVersion": 1,
3
3
  "id": "expo-55",
4
4
  "targetTemplateVersion": 1,
5
+ "nativeRuntime": {
6
+ "android": {
7
+ "version": 1,
8
+ "fingerprint": "aa5ddf89dbde7797f8b8ded037b34083833b18751f126188bce299bca3cdcd9c"
9
+ },
10
+ "ios": {
11
+ "version": 1,
12
+ "fingerprint": "19863bdb84f0d9d163779b1f4b5be824e070f2758b393a9a1bdbba6598dcae50"
13
+ }
14
+ },
5
15
  "expoSdk": 55,
6
16
  "expoVersion": "55.0.26",
7
17
  "expoDoctorVersion": "1.20.0",
8
18
  "managedDependencies": {
19
+ "@expo/config-plugins": "55.0.11",
9
20
  "@expo/metro-runtime": "55.0.11",
10
21
  "@expo/vector-icons": "15.1.1",
11
- "@microsoft/power-apps": "1.2.7",
12
- "@microsoft/power-apps-native-offline": "^0.1.3",
22
+ "@microsoft/power-apps": "1.2.13",
23
+ "@microsoft/power-apps-native-offline": "^0.1.32",
13
24
  "@react-native-async-storage/async-storage": "^2.1.2",
14
25
  "@react-native-community/datetimepicker": "8.6.0",
15
26
  "@react-native-community/netinfo": "11.5.2",
@@ -35,6 +46,7 @@
35
46
  "expo-document-picker": "55.0.13",
36
47
  "expo-file-system": "55.0.19",
37
48
  "expo-font": "55.0.7",
49
+ "expo-haptics": "55.0.16",
38
50
  "expo-image": "55.0.10",
39
51
  "expo-image-manipulator": "55.0.16",
40
52
  "expo-image-picker": "55.0.20",
@@ -45,7 +57,6 @@
45
57
  "expo-local-authentication": "55.0.13",
46
58
  "expo-location": "55.1.9",
47
59
  "expo-mail-composer": "55.0.13",
48
- "expo-media-library": "55.0.16",
49
60
  "expo-modules-core": "55.0.25",
50
61
  "expo-print": "55.0.14",
51
62
  "expo-router": "55.0.14",
@@ -73,9 +84,11 @@
73
84
  },
74
85
  "managedDevDependencies": {
75
86
  "@babel/core": "7.29.6",
87
+ "@microsoft/power-apps-cli": "0.15.3",
76
88
  "@tamagui/babel-plugin": "2.4.5",
77
89
  "@types/react": "19.2.14",
78
90
  "babel-preset-expo": "55.0.18",
91
+ "react-refresh": "0.14.2",
79
92
  "typescript": "5.9.3"
80
93
  },
81
94
  "managedOverrides": {
@@ -83,5 +96,20 @@
83
96
  "uuid": ">=11.1.1 <12",
84
97
  "shell-quote": ">=1.8.4 <2",
85
98
  "postcss": ">=8.5.10 <9"
99
+ },
100
+ "managedScripts": {
101
+ "dev": "expo start",
102
+ "web": "power-apps-web",
103
+ "generate-schemas": "generate-connector-schemas",
104
+ "predev": "npm run generate-schemas",
105
+ "type-check": "tsc --noEmit",
106
+ "build:android": "wrap android",
107
+ "build:ios": "wrap ios",
108
+ "bundle:android": "js-bundle android",
109
+ "bundle:ios": "js-bundle ios",
110
+ "bundle:web": "js-bundle web"
111
+ },
112
+ "managedFields": {
113
+ "main": "expo-router/entry"
86
114
  }
87
115
  }