expo-invoke 3.1.1 → 3.1.3

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.
@@ -5,14 +5,12 @@ android {
5
5
  namespace "expo.modules.invoke"
6
6
  compileSdkVersion safeExtGet("compileSdkVersion", 34)
7
7
 
8
- compileOptions {
9
- sourceCompatibility JavaVersion.VERSION_11
10
- targetCompatibility JavaVersion.VERSION_11
11
- }
12
-
13
- kotlinOptions {
14
- jvmTarget = JavaVersion.VERSION_11.majorVersion
15
- }
8
+ // No explicit compileOptions/kotlinOptions JVM target here — React Native's
9
+ // Gradle plugin forces every subproject's Java tasks to JVM 17 globally, but
10
+ // does not override an already-set Kotlin jvmTarget the same way. Pinning
11
+ // this module to 11 left Java at 17 and Kotlin at 11, which Gradle rejects
12
+ // as an inconsistent JVM target. Let both inherit the project-wide default,
13
+ // same as expo-modules-core and other Expo-maintained native modules do.
16
14
 
17
15
  defaultConfig {
18
16
  minSdkVersion safeExtGet("minSdkVersion", 24)
@@ -35,6 +33,12 @@ dependencies {
35
33
  implementation project(':expo-modules-core')
36
34
  implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlinVersion}"
37
35
  implementation "androidx.core:core-ktx:1.12.0"
36
+ // InvokeSliceProvider.kt uses androidx.slice.* (Slice, SliceProvider, ListBuilder,
37
+ // SliceAction) but nothing declared the artifact that ships those classes —
38
+ // every consumer with slices configured (or even just autolinked, since Gradle
39
+ // compiles this whole module regardless of feature usage) failed to compile.
40
+ implementation "androidx.slice:slice-core:1.0.0"
41
+ implementation "androidx.slice:slice-builders:1.0.0"
38
42
  }
39
43
 
40
44
  def safeExtGet(prop, fallback) {
@@ -152,6 +152,7 @@ const withAndroidInvoke = (config, options) => {
152
152
  };
153
153
  writeXml(path.join(resXmlDir, 'actions.xml'), (0, generateActionsXml_1.generateActionsXml)(intents, packageName));
154
154
  writeXml(path.join(resXmlDir, 'shortcuts.xml'), (0, generateShortcutsXml_1.generateShortcutsXml)(intents, packageName));
155
+ writeXml(path.join(resValuesDir, 'shortcut_strings.xml'), (0, generateShortcutsXml_1.generateShortcutStringsXml)(intents));
155
156
  // Slice string resources
156
157
  if (slices.length > 0) {
157
158
  const sliceStrings = slices.map((s) => ` <string name="slice_${s.id}_title">${s.title}</string>`).join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"withAndroidInvoke.js","sourceRoot":"","sources":["../../../plugin/android/withAndroidInvoke.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"withAndroidInvoke.js","sourceRoot":"","sources":["../../../plugin/android/withAndroidInvoke.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,8 @@
1
1
  import type { IntentDefinition } from '../../src/types';
2
2
  export declare function generateShortcutsXml(intents: IntentDefinition[], packageName: string): string;
3
+ /**
4
+ * String resources backing shortcuts.xml's shortcutShortLabel/shortcutLongLabel —
5
+ * Android requires those attributes to be @string/... references, not literal
6
+ * text, so this must be written alongside shortcuts.xml into res/values/.
7
+ */
8
+ export declare function generateShortcutStringsXml(intents: IntentDefinition[]): string;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateShortcutsXml = generateShortcutsXml;
4
+ exports.generateShortcutStringsXml = generateShortcutStringsXml;
4
5
  function escapeXml(s) {
5
6
  return s
6
7
  .replace(/&/g, '&amp;')
@@ -8,6 +9,11 @@ function escapeXml(s) {
8
9
  .replace(/>/g, '&gt;')
9
10
  .replace(/"/g, '&quot;');
10
11
  }
12
+ // Android resource names must match [a-zA-Z_][a-zA-Z0-9_]* — intent ids are
13
+ // snake_case by convention but this guards against any other characters.
14
+ function toResourceName(id) {
15
+ return id.replace(/[^a-zA-Z0-9_]/g, '_');
16
+ }
11
17
  function generateShortcutsXml(intents, packageName) {
12
18
  const shortcutIntents = intents.filter((i) => i.shortTitle);
13
19
  if (shortcutIntents.length === 0) {
@@ -21,15 +27,17 @@ function generateShortcutsXml(intents, packageName) {
21
27
  `You have ${shortcutIntents.length} intents with shortTitle — ` +
22
28
  `only the first 5 will be included. Remove shortTitle from lower-priority intents.`);
23
29
  }
24
- const items = shortcutIntents.slice(0, 5).map((intent, idx) => {
25
- var _a;
26
- const rank = idx + 1;
30
+ // Static shortcuts have no `android:rank` XML attribute — AAPT rejects it
31
+ // outright ("attribute android:rank not found"). Rank only exists on the
32
+ // runtime ShortcutInfo.Builder API for dynamic shortcuts; for static ones,
33
+ // priority is implied purely by declaration order in this file.
34
+ const items = shortcutIntents.slice(0, 5).map((intent) => {
35
+ const resourceName = toResourceName(intent.id);
27
36
  return ` <shortcut
28
37
  android:shortcutId="${escapeXml(intent.id)}"
29
38
  android:enabled="true"
30
- android:shortcutShortLabel="${escapeXml(((_a = intent.shortTitle) !== null && _a !== void 0 ? _a : intent.title).slice(0, 10))}"
31
- android:shortcutLongLabel="${escapeXml((intent.title).slice(0, 25))}"
32
- android:rank="${rank}">
39
+ android:shortcutShortLabel="@string/shortcut_short_label_${resourceName}"
40
+ android:shortcutLongLabel="@string/shortcut_long_label_${resourceName}">
33
41
  <intent
34
42
  android:action="${escapeXml(packageName)}.SHORTCUT"
35
43
  android:targetPackage="${escapeXml(packageName)}"
@@ -47,4 +55,24 @@ ${items}
47
55
  </shortcuts>
48
56
  `;
49
57
  }
58
+ /**
59
+ * String resources backing shortcuts.xml's shortcutShortLabel/shortcutLongLabel —
60
+ * Android requires those attributes to be @string/... references, not literal
61
+ * text, so this must be written alongside shortcuts.xml into res/values/.
62
+ */
63
+ function generateShortcutStringsXml(intents) {
64
+ const shortcutIntents = intents.filter((i) => i.shortTitle).slice(0, 5);
65
+ if (shortcutIntents.length === 0) {
66
+ return `<?xml version="1.0" encoding="utf-8"?>\n<resources />\n`;
67
+ }
68
+ const strings = shortcutIntents.flatMap((intent) => {
69
+ var _a;
70
+ const resourceName = toResourceName(intent.id);
71
+ return [
72
+ ` <string name="shortcut_short_label_${resourceName}">${escapeXml(((_a = intent.shortTitle) !== null && _a !== void 0 ? _a : intent.title).slice(0, 10))}</string>`,
73
+ ` <string name="shortcut_long_label_${resourceName}">${escapeXml(intent.title.slice(0, 25))}</string>`,
74
+ ];
75
+ }).join('\n');
76
+ return `<?xml version="1.0" encoding="utf-8"?>\n<resources>\n${strings}\n</resources>\n`;
77
+ }
50
78
  //# sourceMappingURL=generateShortcutsXml.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateShortcutsXml.js","sourceRoot":"","sources":["../../../plugin/codegen/generateShortcutsXml.ts"],"names":[],"mappings":";;AAUA,oDA8CC;AAtDD,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC;SACL,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAA2B,EAC3B,WAAmB;IAEnB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAE5D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;;;CAGV,CAAC;IACA,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,0DAA0D;YAC1D,YAAY,eAAe,CAAC,MAAM,6BAA6B;YAC/D,mFAAmF,CACpF,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;;QAC5D,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;QACrB,OAAO;0BACe,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;;kCAEZ,SAAS,CAAC,CAAC,MAAA,MAAM,CAAC,UAAU,mCAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iCAC5D,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnD,IAAI;;wBAEA,SAAS,CAAC,WAAW,CAAC;+BACf,SAAS,CAAC,WAAW,CAAC;6BACxB,SAAS,CAAC,WAAW,CAAC;sBAC7B,SAAS,CAAC,WAAW,CAAC,aAAa,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;;cAE/D,CAAC;IACb,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO;;;;EAIP,KAAK;;;CAGN,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"generateShortcutsXml.js","sourceRoot":"","sources":["../../../plugin/codegen/generateShortcutsXml.ts"],"names":[],"mappings":";;AAgBA,oDAiDC;AAOD,gEAgBC;AAtFD,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC;SACL,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED,4EAA4E;AAC5E,yEAAyE;AACzE,SAAS,cAAc,CAAC,EAAU;IAChC,OAAO,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAA2B,EAC3B,WAAmB;IAEnB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAE5D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;;;CAGV,CAAC;IACA,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,0DAA0D;YAC1D,YAAY,eAAe,CAAC,MAAM,6BAA6B;YAC/D,mFAAmF,CACpF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,yEAAyE;IACzE,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACvD,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,OAAO;0BACe,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;;+DAEiB,YAAY;6DACd,YAAY;;wBAEjD,SAAS,CAAC,WAAW,CAAC;+BACf,SAAS,CAAC,WAAW,CAAC;6BACxB,SAAS,CAAC,WAAW,CAAC;sBAC7B,SAAS,CAAC,WAAW,CAAC,aAAa,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;;cAE/D,CAAC;IACb,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO;;;;EAIP,KAAK;;;CAGN,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CAAC,OAA2B;IACpE,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAExE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,yDAAyD,CAAC;IACnE,CAAC;IAED,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;;QACjD,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,OAAO;YACL,wCAAwC,YAAY,KAAK,SAAS,CAAC,CAAC,MAAA,MAAM,CAAC,UAAU,mCAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW;YAC/H,uCAAuC,YAAY,KAAK,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW;SACxG,CAAC;IACJ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,wDAAwD,OAAO,kBAAkB,CAAC;AAC3F,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-invoke",
3
- "version": "3.1.1",
3
+ "version": "3.1.3",
4
4
  "description": "The complete native-surface-to-JS bridge for Expo. One intent config → Siri, Google Assistant, home screen widgets, Dynamic Island, app icon menus, notification actions, NFC, QR, deep links and more — all through a single useInvoke() hook.",
5
5
  "main": "build/src/index.js",
6
6
  "module": "build/src/index.js",