@capgo/capacitor-updater 7.38.0 → 7.40.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.
package/dist/docs.json CHANGED
@@ -1091,6 +1091,35 @@
1091
1091
  ],
1092
1092
  "slug": "addlistenerchannelprivate-"
1093
1093
  },
1094
+ {
1095
+ "name": "addListener",
1096
+ "signature": "(eventName: 'onFlexibleUpdateStateChange', listenerFunc: (state: FlexibleUpdateState) => void) => Promise<PluginListenerHandle>",
1097
+ "parameters": [
1098
+ {
1099
+ "name": "eventName",
1100
+ "docs": "",
1101
+ "type": "'onFlexibleUpdateStateChange'"
1102
+ },
1103
+ {
1104
+ "name": "listenerFunc",
1105
+ "docs": "",
1106
+ "type": "(state: FlexibleUpdateState) => void"
1107
+ }
1108
+ ],
1109
+ "returns": "Promise<PluginListenerHandle>",
1110
+ "tags": [
1111
+ {
1112
+ "name": "since",
1113
+ "text": "8.0.0"
1114
+ }
1115
+ ],
1116
+ "docs": "Listen for flexible update state changes on Android.\n\nThis event fires during the flexible update download process, providing:\n- Download progress (bytes downloaded / total bytes)\n- Installation status changes\n\n**Install status values:**\n- `UNKNOWN` (0): Unknown status\n- `PENDING` (1): Download pending\n- `DOWNLOADING` (2): Download in progress\n- `INSTALLING` (3): Installing the update\n- `INSTALLED` (4): Update installed (app restart needed)\n- `FAILED` (5): Update failed\n- `CANCELED` (6): Update was canceled\n- `DOWNLOADED` (11): Download complete, ready to install\n\nWhen status is `DOWNLOADED`, you should prompt the user and call\n{@link completeFlexibleUpdate} to finish the installation.",
1117
+ "complexTypes": [
1118
+ "PluginListenerHandle",
1119
+ "FlexibleUpdateState"
1120
+ ],
1121
+ "slug": "addlisteneronflexibleupdatestatechange-"
1122
+ },
1094
1123
  {
1095
1124
  "name": "isAutoUpdateAvailable",
1096
1125
  "signature": "() => Promise<AutoUpdateAvailable>",
@@ -1289,6 +1318,150 @@
1289
1318
  "SetAppIdOptions"
1290
1319
  ],
1291
1320
  "slug": "setappid"
1321
+ },
1322
+ {
1323
+ "name": "getAppUpdateInfo",
1324
+ "signature": "(options?: GetAppUpdateInfoOptions | undefined) => Promise<AppUpdateInfo>",
1325
+ "parameters": [
1326
+ {
1327
+ "name": "options",
1328
+ "docs": "Optional {@link GetAppUpdateInfoOptions} with country code for iOS.",
1329
+ "type": "GetAppUpdateInfoOptions | undefined"
1330
+ }
1331
+ ],
1332
+ "returns": "Promise<AppUpdateInfo>",
1333
+ "tags": [
1334
+ {
1335
+ "name": "param",
1336
+ "text": "options Optional {@link GetAppUpdateInfoOptions} with country code for iOS."
1337
+ },
1338
+ {
1339
+ "name": "returns",
1340
+ "text": "Information about the current and available app versions."
1341
+ },
1342
+ {
1343
+ "name": "throws",
1344
+ "text": "{Error} If the operation fails or store information is unavailable."
1345
+ },
1346
+ {
1347
+ "name": "since",
1348
+ "text": "8.0.0"
1349
+ }
1350
+ ],
1351
+ "docs": "Get information about the app's availability in the App Store or Play Store.\n\nThis method checks the native app stores to see if a newer version of the app\nis available for download. This is different from Capgo's OTA updates - this\nchecks for native app updates that require going through the app stores.\n\n**Platform differences:**\n- **Android**: Uses Play Store's In-App Updates API for accurate update information\n- **iOS**: Queries the App Store lookup API (requires country code for accurate results)\n\n**Returns information about:**\n- Current installed version\n- Available version in the store (if any)\n- Whether an update is available\n- Update priority (Android only)\n- Whether immediate/flexible updates are allowed (Android only)\n\nUse this to:\n- Check if users need to update from the app store\n- Show \"Update Available\" prompts for native updates\n- Implement version gating (require minimum native version)\n- Combine with Capgo OTA updates for a complete update strategy",
1352
+ "complexTypes": [
1353
+ "AppUpdateInfo",
1354
+ "GetAppUpdateInfoOptions"
1355
+ ],
1356
+ "slug": "getappupdateinfo"
1357
+ },
1358
+ {
1359
+ "name": "openAppStore",
1360
+ "signature": "(options?: OpenAppStoreOptions | undefined) => Promise<void>",
1361
+ "parameters": [
1362
+ {
1363
+ "name": "options",
1364
+ "docs": "Optional {@link OpenAppStoreOptions} to customize which app's store page to open.",
1365
+ "type": "OpenAppStoreOptions | undefined"
1366
+ }
1367
+ ],
1368
+ "returns": "Promise<void>",
1369
+ "tags": [
1370
+ {
1371
+ "name": "param",
1372
+ "text": "options Optional {@link OpenAppStoreOptions} to customize which app's store page to open."
1373
+ },
1374
+ {
1375
+ "name": "returns",
1376
+ "text": "Resolves when the store is opened."
1377
+ },
1378
+ {
1379
+ "name": "throws",
1380
+ "text": "{Error} If the store cannot be opened."
1381
+ },
1382
+ {
1383
+ "name": "since",
1384
+ "text": "8.0.0"
1385
+ }
1386
+ ],
1387
+ "docs": "Open the app's page in the App Store or Play Store.\n\nThis navigates the user to your app's store listing where they can manually\nupdate the app. Use this as a fallback when in-app updates are not available\nor when the user needs to update on iOS.\n\n**Platform behavior:**\n- **Android**: Opens Play Store to the app's page\n- **iOS**: Opens App Store to the app's page\n\n**Customization options:**\n- `appId`: Specify a custom App Store ID (iOS) - useful for opening a different app's page\n- `packageName`: Specify a custom package name (Android) - useful for opening a different app's page",
1388
+ "complexTypes": [
1389
+ "OpenAppStoreOptions"
1390
+ ],
1391
+ "slug": "openappstore"
1392
+ },
1393
+ {
1394
+ "name": "performImmediateUpdate",
1395
+ "signature": "() => Promise<AppUpdateResult>",
1396
+ "parameters": [],
1397
+ "returns": "Promise<AppUpdateResult>",
1398
+ "tags": [
1399
+ {
1400
+ "name": "returns",
1401
+ "text": "Result indicating success, cancellation, or failure."
1402
+ },
1403
+ {
1404
+ "name": "throws",
1405
+ "text": "{Error} If not on Android, no update is available, or immediate updates not allowed."
1406
+ },
1407
+ {
1408
+ "name": "since",
1409
+ "text": "8.0.0"
1410
+ }
1411
+ ],
1412
+ "docs": "Perform an immediate in-app update on Android.\n\nThis triggers Google Play's immediate update flow, which:\n1. Shows a full-screen update UI\n2. Downloads and installs the update\n3. Restarts the app automatically\n\nThe user cannot continue using the app until the update is complete.\nThis is ideal for critical updates that must be installed immediately.\n\n**Requirements:**\n- Android only (throws error on iOS)\n- An update must be available (check with {@link getAppUpdateInfo} first)\n- The update must allow immediate updates (`immediateUpdateAllowed: true`)\n\n**User experience:**\n- Full-screen blocking UI\n- Progress shown during download\n- App automatically restarts after installation",
1413
+ "complexTypes": [
1414
+ "AppUpdateResult"
1415
+ ],
1416
+ "slug": "performimmediateupdate"
1417
+ },
1418
+ {
1419
+ "name": "startFlexibleUpdate",
1420
+ "signature": "() => Promise<AppUpdateResult>",
1421
+ "parameters": [],
1422
+ "returns": "Promise<AppUpdateResult>",
1423
+ "tags": [
1424
+ {
1425
+ "name": "returns",
1426
+ "text": "Result indicating the update was started, cancelled, or failed."
1427
+ },
1428
+ {
1429
+ "name": "throws",
1430
+ "text": "{Error} If not on Android, no update is available, or flexible updates not allowed."
1431
+ },
1432
+ {
1433
+ "name": "since",
1434
+ "text": "8.0.0"
1435
+ }
1436
+ ],
1437
+ "docs": "Start a flexible in-app update on Android.\n\nThis triggers Google Play's flexible update flow, which:\n1. Downloads the update in the background\n2. Allows the user to continue using the app\n3. Notifies when download is complete\n4. Requires calling {@link completeFlexibleUpdate} to install\n\nMonitor the download progress using the `onFlexibleUpdateStateChange` listener.\n\n**Requirements:**\n- Android only (throws error on iOS)\n- An update must be available (check with {@link getAppUpdateInfo} first)\n- The update must allow flexible updates (`flexibleUpdateAllowed: true`)\n\n**Typical flow:**\n1. Call `startFlexibleUpdate()` to begin download\n2. Listen to `onFlexibleUpdateStateChange` for progress\n3. When status is `DOWNLOADED`, prompt user to restart\n4. Call `completeFlexibleUpdate()` to install and restart",
1438
+ "complexTypes": [
1439
+ "AppUpdateResult"
1440
+ ],
1441
+ "slug": "startflexibleupdate"
1442
+ },
1443
+ {
1444
+ "name": "completeFlexibleUpdate",
1445
+ "signature": "() => Promise<void>",
1446
+ "parameters": [],
1447
+ "returns": "Promise<void>",
1448
+ "tags": [
1449
+ {
1450
+ "name": "returns",
1451
+ "text": "Resolves when the update installation begins (app will restart)."
1452
+ },
1453
+ {
1454
+ "name": "throws",
1455
+ "text": "{Error} If not on Android or no downloaded update is pending."
1456
+ },
1457
+ {
1458
+ "name": "since",
1459
+ "text": "8.0.0"
1460
+ }
1461
+ ],
1462
+ "docs": "Complete a flexible in-app update on Android.\n\nAfter a flexible update has been downloaded (status `DOWNLOADED` in\n`onFlexibleUpdateStateChange`), call this method to install the update\nand restart the app.\n\n**Important:** This will immediately restart the app. Make sure to:\n- Save any user data before calling\n- Prompt the user before restarting\n- Only call when the download status is `DOWNLOADED`",
1463
+ "complexTypes": [],
1464
+ "slug": "completeflexibleupdate"
1292
1465
  }
1293
1466
  ],
1294
1467
  "properties": []
@@ -2341,6 +2514,58 @@
2341
2514
  }
2342
2515
  ]
2343
2516
  },
2517
+ {
2518
+ "name": "FlexibleUpdateState",
2519
+ "slug": "flexibleupdatestate",
2520
+ "docs": "State information for flexible update progress (Android only).",
2521
+ "tags": [
2522
+ {
2523
+ "text": "8.0.0",
2524
+ "name": "since"
2525
+ }
2526
+ ],
2527
+ "methods": [],
2528
+ "properties": [
2529
+ {
2530
+ "name": "installStatus",
2531
+ "tags": [
2532
+ {
2533
+ "text": "8.0.0",
2534
+ "name": "since"
2535
+ }
2536
+ ],
2537
+ "docs": "The current installation status.",
2538
+ "complexTypes": [
2539
+ "FlexibleUpdateInstallStatus"
2540
+ ],
2541
+ "type": "FlexibleUpdateInstallStatus"
2542
+ },
2543
+ {
2544
+ "name": "bytesDownloaded",
2545
+ "tags": [
2546
+ {
2547
+ "text": "8.0.0",
2548
+ "name": "since"
2549
+ }
2550
+ ],
2551
+ "docs": "Number of bytes downloaded so far.\nOnly available during the `DOWNLOADING` status.",
2552
+ "complexTypes": [],
2553
+ "type": "number | undefined"
2554
+ },
2555
+ {
2556
+ "name": "totalBytesToDownload",
2557
+ "tags": [
2558
+ {
2559
+ "text": "8.0.0",
2560
+ "name": "since"
2561
+ }
2562
+ ],
2563
+ "docs": "Total number of bytes to download.\nOnly available during the `DOWNLOADING` status.",
2564
+ "complexTypes": [],
2565
+ "type": "number | undefined"
2566
+ }
2567
+ ]
2568
+ },
2344
2569
  {
2345
2570
  "name": "AutoUpdateAvailable",
2346
2571
  "slug": "autoupdateavailable",
@@ -2420,625 +2645,450 @@
2420
2645
  "type": "string"
2421
2646
  }
2422
2647
  ]
2423
- }
2424
- ],
2425
- "enums": [],
2426
- "typeAliases": [
2427
- {
2428
- "name": "BundleStatus",
2429
- "slug": "bundlestatus",
2430
- "docs": "pending: The bundle is pending to be **SET** as the next bundle.\ndownloading: The bundle is being downloaded.\nsuccess: The bundle has been downloaded and is ready to be **SET** as the next bundle.\nerror: The bundle has failed to download.",
2431
- "types": [
2432
- {
2433
- "text": "'success'",
2434
- "complexTypes": []
2435
- },
2436
- {
2437
- "text": "'error'",
2438
- "complexTypes": []
2439
- },
2440
- {
2441
- "text": "'pending'",
2442
- "complexTypes": []
2443
- },
2444
- {
2445
- "text": "'downloading'",
2446
- "complexTypes": []
2447
- }
2448
- ]
2449
- },
2450
- {
2451
- "name": "DelayUntilNext",
2452
- "slug": "delayuntilnext",
2453
- "docs": "",
2454
- "types": [
2455
- {
2456
- "text": "'background'",
2457
- "complexTypes": []
2458
- },
2459
- {
2460
- "text": "'kill'",
2461
- "complexTypes": []
2462
- },
2463
- {
2464
- "text": "'nativeVersion'",
2465
- "complexTypes": []
2466
- },
2467
- {
2468
- "text": "'date'",
2469
- "complexTypes": []
2470
- }
2471
- ]
2472
2648
  },
2473
2649
  {
2474
- "name": "BreakingAvailableEvent",
2475
- "slug": "breakingavailableevent",
2476
- "docs": "Payload emitted by {@link CapacitorUpdaterPlugin.addListener} with `breakingAvailable`.",
2477
- "types": [
2650
+ "name": "AppUpdateInfo",
2651
+ "slug": "appupdateinfo",
2652
+ "docs": "Information about app updates available in the App Store or Play Store.",
2653
+ "tags": [
2478
2654
  {
2479
- "text": "MajorAvailableEvent",
2480
- "complexTypes": [
2481
- "MajorAvailableEvent"
2482
- ]
2655
+ "text": "8.0.0",
2656
+ "name": "since"
2483
2657
  }
2484
- ]
2485
- }
2486
- ],
2487
- "pluginConfigs": [
2488
- {
2489
- "name": "CapacitorUpdater",
2490
- "slug": "capacitorupdater",
2658
+ ],
2659
+ "methods": [],
2491
2660
  "properties": [
2492
2661
  {
2493
- "name": "appReadyTimeout",
2662
+ "name": "currentVersionName",
2494
2663
  "tags": [
2495
2664
  {
2496
- "text": "10000 // (10 seconds)",
2497
- "name": "default"
2498
- },
2499
- {
2500
- "text": "1000 // (1 second, minimum 1000)",
2501
- "name": "example"
2665
+ "text": "8.0.0",
2666
+ "name": "since"
2502
2667
  }
2503
2668
  ],
2504
- "docs": "Configure the number of milliseconds the native plugin should wait before considering an update 'failed'.\n\nOnly available for Android and iOS.",
2669
+ "docs": "The currently installed version name (e.g., \"1.2.3\").",
2505
2670
  "complexTypes": [],
2506
- "type": "number | undefined"
2671
+ "type": "string"
2507
2672
  },
2508
2673
  {
2509
- "name": "responseTimeout",
2674
+ "name": "availableVersionName",
2510
2675
  "tags": [
2511
2676
  {
2512
- "text": "20 // (20 second)",
2513
- "name": "default"
2514
- },
2515
- {
2516
- "text": "10 // (10 second)",
2517
- "name": "example"
2677
+ "text": "8.0.0",
2678
+ "name": "since"
2518
2679
  }
2519
2680
  ],
2520
- "docs": "Configure the number of seconds the native plugin should wait before considering API timeout.\n\nOnly available for Android and iOS.",
2681
+ "docs": "The version name available in the store, if an update is available.\nMay be undefined if no update information is available.",
2521
2682
  "complexTypes": [],
2522
- "type": "number | undefined"
2683
+ "type": "string | undefined"
2523
2684
  },
2524
2685
  {
2525
- "name": "autoDeleteFailed",
2686
+ "name": "currentVersionCode",
2526
2687
  "tags": [
2527
2688
  {
2528
- "text": "true",
2529
- "name": "default"
2530
- },
2531
- {
2532
- "text": "false",
2533
- "name": "example"
2689
+ "text": "8.0.0",
2690
+ "name": "since"
2534
2691
  }
2535
2692
  ],
2536
- "docs": "Configure whether the plugin should use automatically delete failed bundles.\n\nOnly available for Android and iOS.",
2693
+ "docs": "The currently installed version code (Android) or build number (iOS).",
2537
2694
  "complexTypes": [],
2538
- "type": "boolean | undefined"
2695
+ "type": "string"
2539
2696
  },
2540
2697
  {
2541
- "name": "autoDeletePrevious",
2698
+ "name": "availableVersionCode",
2542
2699
  "tags": [
2543
2700
  {
2544
- "text": "true",
2545
- "name": "default"
2546
- },
2547
- {
2548
- "text": "false",
2549
- "name": "example"
2701
+ "text": "8.0.0",
2702
+ "name": "since"
2550
2703
  }
2551
2704
  ],
2552
- "docs": "Configure whether the plugin should use automatically delete previous bundles after a successful update.\n\nOnly available for Android and iOS.",
2705
+ "docs": "The version code available in the store (Android only).\nOn iOS, this will be the same as `availableVersionName`.",
2553
2706
  "complexTypes": [],
2554
- "type": "boolean | undefined"
2707
+ "type": "string | undefined"
2555
2708
  },
2556
2709
  {
2557
- "name": "autoUpdate",
2710
+ "name": "availableVersionReleaseDate",
2558
2711
  "tags": [
2559
2712
  {
2560
- "text": "true",
2561
- "name": "default"
2562
- },
2563
- {
2564
- "text": "false",
2565
- "name": "example"
2713
+ "text": "8.0.0",
2714
+ "name": "since"
2566
2715
  }
2567
2716
  ],
2568
- "docs": "Configure whether the plugin should use Auto Update via an update server.\n\nOnly available for Android and iOS.",
2717
+ "docs": "The release date of the available version (iOS only).\nFormat: ISO 8601 date string.",
2569
2718
  "complexTypes": [],
2570
- "type": "boolean | undefined"
2719
+ "type": "string | undefined"
2571
2720
  },
2572
2721
  {
2573
- "name": "resetWhenUpdate",
2722
+ "name": "updateAvailability",
2574
2723
  "tags": [
2575
2724
  {
2576
- "text": "true",
2577
- "name": "default"
2578
- },
2579
- {
2580
- "text": "false",
2581
- "name": "example"
2725
+ "text": "8.0.0",
2726
+ "name": "since"
2582
2727
  }
2583
2728
  ],
2584
- "docs": "Automatically delete previous downloaded bundles when a newer native app bundle is installed to the device.\nSetting this to false can broke the auto update flow if the user download from the store a native app bundle that is older than the current downloaded bundle. Upload will be prevented by channel setting downgrade_under_native.\nOnly available for Android and iOS.",
2585
- "complexTypes": [],
2586
- "type": "boolean | undefined"
2587
- },
2588
- {
2589
- "name": "updateUrl",
2590
- "tags": [
2591
- {
2592
- "text": "https://plugin.capgo.app/updates",
2593
- "name": "default"
2594
- },
2595
- {
2596
- "text": "https://example.com/api/auto_update",
2597
- "name": "example"
2598
- }
2599
- ],
2600
- "docs": "Configure the URL / endpoint to which update checks are sent.\n\nOnly available for Android and iOS.",
2601
- "complexTypes": [],
2602
- "type": "string | undefined"
2603
- },
2604
- {
2605
- "name": "channelUrl",
2606
- "tags": [
2607
- {
2608
- "text": "https://plugin.capgo.app/channel_self",
2609
- "name": "default"
2610
- },
2611
- {
2612
- "text": "https://example.com/api/channel",
2613
- "name": "example"
2614
- }
2615
- ],
2616
- "docs": "Configure the URL / endpoint for channel operations.\n\nOnly available for Android and iOS.",
2617
- "complexTypes": [],
2618
- "type": "string | undefined"
2619
- },
2620
- {
2621
- "name": "statsUrl",
2622
- "tags": [
2623
- {
2624
- "text": "https://plugin.capgo.app/stats",
2625
- "name": "default"
2626
- },
2627
- {
2628
- "text": "https://example.com/api/stats",
2629
- "name": "example"
2630
- }
2631
- ],
2632
- "docs": "Configure the URL / endpoint to which update statistics are sent.\n\nOnly available for Android and iOS. Set to \"\" to disable stats reporting.",
2633
- "complexTypes": [],
2634
- "type": "string | undefined"
2635
- },
2636
- {
2637
- "name": "publicKey",
2638
- "tags": [
2639
- {
2640
- "text": "undefined",
2641
- "name": "default"
2642
- },
2643
- {
2644
- "text": "6.2.0",
2645
- "name": "since"
2646
- }
2647
- ],
2648
- "docs": "Configure the public key for end to end live update encryption Version 2\n\nOnly available for Android and iOS.",
2649
- "complexTypes": [],
2650
- "type": "string | undefined"
2651
- },
2652
- {
2653
- "name": "version",
2654
- "tags": [
2655
- {
2656
- "text": "undefined",
2657
- "name": "default"
2658
- },
2659
- {
2660
- "text": "4.17.48",
2661
- "name": "since"
2662
- }
2729
+ "docs": "The current update availability status.",
2730
+ "complexTypes": [
2731
+ "AppUpdateAvailability"
2663
2732
  ],
2664
- "docs": "Configure the current version of the app. This will be used for the first update request.\nIf not set, the plugin will get the version from the native code.\n\nOnly available for Android and iOS.",
2665
- "complexTypes": [],
2666
- "type": "string | undefined"
2733
+ "type": "AppUpdateAvailability"
2667
2734
  },
2668
2735
  {
2669
- "name": "directUpdate",
2736
+ "name": "updatePriority",
2670
2737
  "tags": [
2671
2738
  {
2672
- "text": "false",
2673
- "name": "default"
2674
- },
2675
- {
2676
- "text": "5.1.0",
2739
+ "text": "8.0.0",
2677
2740
  "name": "since"
2678
2741
  }
2679
2742
  ],
2680
- "docs": "Configure when the plugin should direct install updates. Only for autoUpdate mode.\nWorks well for apps less than 10MB and with uploads done using --partial flag.\nZip or apps more than 10MB will be relatively slow for users to update.\n- false: Never do direct updates (use default behavior: download at start, set when backgrounded)\n- atInstall: Direct update only when app is installed, updated from store, otherwise act as directUpdate = false\n- onLaunch: Direct update only on app installed, updated from store or after app kill, otherwise act as directUpdate = false\n- always: Direct update in all previous cases (app installed, updated from store, after app kill or app resume), never act as directUpdate = false\n- true: (deprecated) Same as \"always\" for backward compatibility\n\nOnly available for Android and iOS.",
2743
+ "docs": "The priority of the update as set by the developer in Play Console (Android only).\nValues range from 0 (default/lowest) to 5 (highest priority).\n\nUse this to decide whether to show an update prompt or force an update.",
2681
2744
  "complexTypes": [],
2682
- "type": "boolean | 'always' | 'atInstall' | 'onLaunch' | undefined"
2745
+ "type": "number | undefined"
2683
2746
  },
2684
2747
  {
2685
- "name": "autoSplashscreen",
2748
+ "name": "immediateUpdateAllowed",
2686
2749
  "tags": [
2687
2750
  {
2688
- "text": "false",
2689
- "name": "default"
2690
- },
2691
- {
2692
- "text": "7.6.0",
2751
+ "text": "8.0.0",
2693
2752
  "name": "since"
2694
2753
  }
2695
2754
  ],
2696
- "docs": "Automatically handle splashscreen hiding when using directUpdate. When enabled, the plugin will automatically hide the splashscreen after updates are applied or when no update is needed.\nThis removes the need to manually listen for appReady events and call SplashScreen.hide().\nOnly works when directUpdate is set to \"atInstall\", \"always\", \"onLaunch\", or true.\nRequires the @capacitor/splash-screen plugin to be installed and configured with launchAutoHide: false.\nRequires autoUpdate and directUpdate to be enabled.\n\nOnly available for Android and iOS.",
2755
+ "docs": "Whether an immediate update is allowed (Android only).\n\nIf `true`, you can call {@link CapacitorUpdaterPlugin.performImmediateUpdate}.",
2697
2756
  "complexTypes": [],
2698
2757
  "type": "boolean | undefined"
2699
2758
  },
2700
2759
  {
2701
- "name": "autoSplashscreenLoader",
2760
+ "name": "flexibleUpdateAllowed",
2702
2761
  "tags": [
2703
2762
  {
2704
- "text": "false",
2705
- "name": "default"
2706
- },
2707
- {
2708
- "text": "7.19.0",
2763
+ "text": "8.0.0",
2709
2764
  "name": "since"
2710
2765
  }
2711
2766
  ],
2712
- "docs": "Display a native loading indicator on top of the splashscreen while automatic direct updates are running.\nOnly takes effect when {@link autoSplashscreen} is enabled.\nRequires the @capacitor/splash-screen plugin to be installed and configured with launchAutoHide: false.\n\nOnly available for Android and iOS.",
2767
+ "docs": "Whether a flexible update is allowed (Android only).\n\nIf `true`, you can call {@link CapacitorUpdaterPlugin.startFlexibleUpdate}.",
2713
2768
  "complexTypes": [],
2714
2769
  "type": "boolean | undefined"
2715
2770
  },
2716
2771
  {
2717
- "name": "autoSplashscreenTimeout",
2772
+ "name": "clientVersionStalenessDays",
2718
2773
  "tags": [
2719
2774
  {
2720
- "text": "10000 // (10 seconds)",
2721
- "name": "default"
2722
- },
2723
- {
2724
- "text": "7.19.0",
2775
+ "text": "8.0.0",
2725
2776
  "name": "since"
2726
2777
  }
2727
2778
  ],
2728
- "docs": "Automatically hide the splashscreen after the specified number of milliseconds when using automatic direct updates.\nIf the timeout elapses, the update continues to download in the background while the splashscreen is dismissed.\nSet to `0` (zero) to disable the timeout.\nWhen the timeout fires, the direct update flow is skipped and the downloaded bundle is installed on the next background/launch.\nRequires {@link autoSplashscreen} to be enabled.\n\nOnly available for Android and iOS.",
2729
- "complexTypes": [],
2730
- "type": "number | undefined"
2731
- },
2732
- {
2733
- "name": "periodCheckDelay",
2734
- "tags": [
2735
- {
2736
- "text": "0 (disabled)",
2737
- "name": "default"
2738
- },
2739
- {
2740
- "text": "3600 (1 hour)",
2741
- "name": "example"
2742
- },
2743
- {
2744
- "text": "86400 (24 hours)",
2745
- "name": "example"
2746
- }
2747
- ],
2748
- "docs": "Configure the delay period for period update check. the unit is in seconds.\n\nOnly available for Android and iOS.\nCannot be less than 600 seconds (10 minutes).",
2779
+ "docs": "Number of days since the update became available (Android only).\n\nUse this to implement \"update nagging\" - remind users more frequently\nas the update ages.",
2749
2780
  "complexTypes": [],
2750
2781
  "type": "number | undefined"
2751
2782
  },
2752
2783
  {
2753
- "name": "localS3",
2784
+ "name": "installStatus",
2754
2785
  "tags": [
2755
2786
  {
2756
- "text": "undefined",
2757
- "name": "default"
2758
- },
2759
- {
2760
- "text": "4.17.48",
2787
+ "text": "8.0.0",
2761
2788
  "name": "since"
2762
2789
  }
2763
2790
  ],
2764
- "docs": "Configure the CLI to use a local server for testing or self-hosted update server.",
2765
- "complexTypes": [],
2766
- "type": "boolean | undefined"
2791
+ "docs": "The current install status of a flexible update (Android only).",
2792
+ "complexTypes": [
2793
+ "FlexibleUpdateInstallStatus"
2794
+ ],
2795
+ "type": "FlexibleUpdateInstallStatus"
2767
2796
  },
2768
2797
  {
2769
- "name": "localHost",
2798
+ "name": "minimumOsVersion",
2770
2799
  "tags": [
2771
2800
  {
2772
- "text": "undefined",
2773
- "name": "default"
2774
- },
2775
- {
2776
- "text": "4.17.48",
2801
+ "text": "8.0.0",
2777
2802
  "name": "since"
2778
2803
  }
2779
2804
  ],
2780
- "docs": "Configure the CLI to use a local server for testing or self-hosted update server.",
2805
+ "docs": "The minimum OS version required for the available update (iOS only).",
2781
2806
  "complexTypes": [],
2782
2807
  "type": "string | undefined"
2783
- },
2808
+ }
2809
+ ]
2810
+ },
2811
+ {
2812
+ "name": "GetAppUpdateInfoOptions",
2813
+ "slug": "getappupdateinfooptions",
2814
+ "docs": "Options for {@link CapacitorUpdaterPlugin.getAppUpdateInfo}.",
2815
+ "tags": [
2784
2816
  {
2785
- "name": "localWebHost",
2817
+ "text": "8.0.0",
2818
+ "name": "since"
2819
+ }
2820
+ ],
2821
+ "methods": [],
2822
+ "properties": [
2823
+ {
2824
+ "name": "country",
2786
2825
  "tags": [
2787
2826
  {
2788
- "text": "undefined",
2789
- "name": "default"
2790
- },
2791
- {
2792
- "text": "4.17.48",
2827
+ "text": "8.0.0",
2793
2828
  "name": "since"
2794
2829
  }
2795
2830
  ],
2796
- "docs": "Configure the CLI to use a local server for testing or self-hosted update server.",
2831
+ "docs": "Two-letter country code (ISO 3166-1 alpha-2) for the App Store lookup.\n\nThis is required on iOS to get accurate App Store information, as app\navailability and versions can vary by country.\n\nExamples: \"US\", \"GB\", \"DE\", \"JP\", \"FR\"\n\nOn Android, this option is ignored as the Play Store handles region\ndetection automatically.",
2797
2832
  "complexTypes": [],
2798
2833
  "type": "string | undefined"
2799
- },
2834
+ }
2835
+ ]
2836
+ },
2837
+ {
2838
+ "name": "OpenAppStoreOptions",
2839
+ "slug": "openappstoreoptions",
2840
+ "docs": "Options for {@link CapacitorUpdaterPlugin.openAppStore}.",
2841
+ "tags": [
2800
2842
  {
2801
- "name": "localSupa",
2843
+ "text": "8.0.0",
2844
+ "name": "since"
2845
+ }
2846
+ ],
2847
+ "methods": [],
2848
+ "properties": [
2849
+ {
2850
+ "name": "packageName",
2802
2851
  "tags": [
2803
2852
  {
2804
- "text": "undefined",
2805
- "name": "default"
2806
- },
2807
- {
2808
- "text": "4.17.48",
2853
+ "text": "8.0.0",
2809
2854
  "name": "since"
2810
2855
  }
2811
2856
  ],
2812
- "docs": "Configure the CLI to use a local server for testing or self-hosted update server.",
2857
+ "docs": "The Android package name to open in the Play Store.\n\nIf not specified, uses the current app's package name.\nUse this to open a different app's store page.\n\nOnly used on Android.",
2813
2858
  "complexTypes": [],
2814
2859
  "type": "string | undefined"
2815
2860
  },
2816
2861
  {
2817
- "name": "localSupaAnon",
2862
+ "name": "appId",
2818
2863
  "tags": [
2819
2864
  {
2820
- "text": "undefined",
2821
- "name": "default"
2822
- },
2823
- {
2824
- "text": "4.17.48",
2865
+ "text": "8.0.0",
2825
2866
  "name": "since"
2826
2867
  }
2827
2868
  ],
2828
- "docs": "Configure the CLI to use a local server for testing.",
2869
+ "docs": "The iOS App Store ID to open.\n\nIf not specified, uses the current app's bundle identifier to look up the app.\nUse this to open a different app's store page or when automatic lookup fails.\n\nOnly used on iOS.",
2829
2870
  "complexTypes": [],
2830
2871
  "type": "string | undefined"
2831
- },
2872
+ }
2873
+ ]
2874
+ },
2875
+ {
2876
+ "name": "AppUpdateResult",
2877
+ "slug": "appupdateresult",
2878
+ "docs": "Result of an app update operation.",
2879
+ "tags": [
2880
+ {
2881
+ "text": "8.0.0",
2882
+ "name": "since"
2883
+ }
2884
+ ],
2885
+ "methods": [],
2886
+ "properties": [
2832
2887
  {
2833
- "name": "localApi",
2888
+ "name": "code",
2834
2889
  "tags": [
2835
2890
  {
2836
- "text": "undefined",
2837
- "name": "default"
2838
- },
2839
- {
2840
- "text": "6.3.3",
2891
+ "text": "8.0.0",
2841
2892
  "name": "since"
2842
2893
  }
2843
2894
  ],
2844
- "docs": "Configure the CLI to use a local api for testing.",
2845
- "complexTypes": [],
2846
- "type": "string | undefined"
2895
+ "docs": "The result code of the update operation.",
2896
+ "complexTypes": [
2897
+ "AppUpdateResultCode"
2898
+ ],
2899
+ "type": "AppUpdateResultCode"
2900
+ }
2901
+ ]
2902
+ }
2903
+ ],
2904
+ "enums": [
2905
+ {
2906
+ "name": "FlexibleUpdateInstallStatus",
2907
+ "slug": "flexibleupdateinstallstatus",
2908
+ "members": [
2909
+ {
2910
+ "name": "UNKNOWN",
2911
+ "value": "0",
2912
+ "tags": [],
2913
+ "docs": "Unknown install status."
2847
2914
  },
2848
2915
  {
2849
- "name": "localApiFiles",
2850
- "tags": [
2851
- {
2852
- "text": "undefined",
2853
- "name": "default"
2854
- },
2855
- {
2856
- "text": "6.3.3",
2857
- "name": "since"
2858
- }
2859
- ],
2860
- "docs": "Configure the CLI to use a local file api for testing.",
2861
- "complexTypes": [],
2862
- "type": "string | undefined"
2916
+ "name": "PENDING",
2917
+ "value": "1",
2918
+ "tags": [],
2919
+ "docs": "Download is pending and will start soon."
2863
2920
  },
2864
2921
  {
2865
- "name": "allowModifyUrl",
2866
- "tags": [
2867
- {
2868
- "text": "false",
2869
- "name": "default"
2870
- },
2871
- {
2872
- "text": "5.4.0",
2873
- "name": "since"
2874
- }
2875
- ],
2876
- "docs": "Allow the plugin to modify the updateUrl, statsUrl and channelUrl dynamically from the JavaScript side.",
2877
- "complexTypes": [],
2878
- "type": "boolean | undefined"
2922
+ "name": "DOWNLOADING",
2923
+ "value": "2",
2924
+ "tags": [],
2925
+ "docs": "Download is in progress.\nCheck `bytesDownloaded` and `totalBytesToDownload` for progress."
2879
2926
  },
2880
2927
  {
2881
- "name": "allowModifyAppId",
2882
- "tags": [
2883
- {
2884
- "text": "false",
2885
- "name": "default"
2886
- },
2887
- {
2888
- "text": "7.14.0",
2889
- "name": "since"
2890
- }
2891
- ],
2892
- "docs": "Allow the plugin to modify the appId dynamically from the JavaScript side.",
2893
- "complexTypes": [],
2894
- "type": "boolean | undefined"
2928
+ "name": "INSTALLING",
2929
+ "value": "3",
2930
+ "tags": [],
2931
+ "docs": "The update is being installed."
2895
2932
  },
2896
2933
  {
2897
- "name": "allowManualBundleError",
2898
- "tags": [
2899
- {
2900
- "text": "false",
2901
- "name": "default"
2902
- },
2903
- {
2904
- "text": "7.20.0",
2905
- "name": "since"
2906
- }
2907
- ],
2908
- "docs": "Allow marking bundles as errored from JavaScript while using manual update flows.\nWhen enabled, {@link CapacitorUpdaterPlugin.setBundleError} can change a bundle status to `error`.",
2909
- "complexTypes": [],
2910
- "type": "boolean | undefined"
2934
+ "name": "INSTALLED",
2935
+ "value": "4",
2936
+ "tags": [],
2937
+ "docs": "The update has been installed.\nThe app needs to be restarted to use the new version."
2911
2938
  },
2912
2939
  {
2913
- "name": "persistCustomId",
2914
- "tags": [
2915
- {
2916
- "text": "false (will be true by default in a future major release v8.x.x)",
2917
- "name": "default"
2918
- },
2919
- {
2920
- "text": "7.17.3",
2921
- "name": "since"
2922
- }
2923
- ],
2924
- "docs": "Persist the customId set through {@link CapacitorUpdaterPlugin.setCustomId} across app restarts.\n\nOnly available for Android and iOS.",
2925
- "complexTypes": [],
2926
- "type": "boolean | undefined"
2940
+ "name": "FAILED",
2941
+ "value": "5",
2942
+ "tags": [],
2943
+ "docs": "The update failed to download or install."
2927
2944
  },
2928
2945
  {
2929
- "name": "persistModifyUrl",
2930
- "tags": [
2931
- {
2932
- "text": "false",
2933
- "name": "default"
2934
- },
2935
- {
2936
- "text": "7.20.0",
2937
- "name": "since"
2938
- }
2939
- ],
2940
- "docs": "Persist the updateUrl, statsUrl and channelUrl set through {@link CapacitorUpdaterPlugin.setUpdateUrl},\n{@link CapacitorUpdaterPlugin.setStatsUrl} and {@link CapacitorUpdaterPlugin.setChannelUrl} across app restarts.\n\nOnly available for Android and iOS.",
2941
- "complexTypes": [],
2942
- "type": "boolean | undefined"
2946
+ "name": "CANCELED",
2947
+ "value": "6",
2948
+ "tags": [],
2949
+ "docs": "The update was canceled by the user."
2943
2950
  },
2944
2951
  {
2945
- "name": "allowSetDefaultChannel",
2946
- "tags": [
2947
- {
2948
- "text": "true",
2949
- "name": "default"
2950
- },
2951
- {
2952
- "text": "7.34.0",
2953
- "name": "since"
2954
- }
2955
- ],
2956
- "docs": "Allow or disallow the {@link CapacitorUpdaterPlugin.setChannel} method to modify the defaultChannel.\nWhen set to `false`, calling `setChannel()` will return an error with code `disabled_by_config`.",
2957
- "complexTypes": [],
2958
- "type": "boolean | undefined"
2952
+ "name": "DOWNLOADED",
2953
+ "value": "11",
2954
+ "tags": [],
2955
+ "docs": "The update has been downloaded and is ready to install.\nCall {@link CapacitorUpdaterPlugin.completeFlexibleUpdate} to install."
2956
+ }
2957
+ ]
2958
+ },
2959
+ {
2960
+ "name": "AppUpdateAvailability",
2961
+ "slug": "appupdateavailability",
2962
+ "members": [
2963
+ {
2964
+ "name": "UNKNOWN",
2965
+ "value": "0",
2966
+ "tags": [],
2967
+ "docs": "Update availability is unknown.\nThis typically means the check hasn't completed or failed."
2959
2968
  },
2960
2969
  {
2961
- "name": "defaultChannel",
2962
- "tags": [
2963
- {
2964
- "text": "undefined",
2965
- "name": "default"
2966
- },
2967
- {
2968
- "text": "5.5.0",
2969
- "name": "since"
2970
- }
2971
- ],
2972
- "docs": "Set the default channel for the app in the config. Case sensitive.\nThis will setting will override the default channel set in the cloud, but will still respect overrides made in the cloud.\nThis requires the channel to allow devices to self dissociate/associate in the channel settings. https://capgo.app/docs/public-api/channels/#channel-configuration-options",
2973
- "complexTypes": [],
2974
- "type": "string | undefined"
2970
+ "name": "UPDATE_NOT_AVAILABLE",
2971
+ "value": "1",
2972
+ "tags": [],
2973
+ "docs": "No update is available.\nThe installed version is the latest."
2975
2974
  },
2976
2975
  {
2977
- "name": "appId",
2978
- "tags": [
2979
- {
2980
- "text": "undefined",
2981
- "name": "default"
2982
- },
2983
- {
2984
- "text": "6.0.0",
2985
- "name": "since"
2986
- }
2987
- ],
2988
- "docs": "Configure the app id for the app in the config.",
2989
- "complexTypes": [],
2990
- "type": "string | undefined"
2976
+ "name": "UPDATE_AVAILABLE",
2977
+ "value": "2",
2978
+ "tags": [],
2979
+ "docs": "An update is available for download."
2991
2980
  },
2992
2981
  {
2993
- "name": "keepUrlPathAfterReload",
2994
- "tags": [
2995
- {
2996
- "text": "false",
2997
- "name": "default"
2998
- },
2999
- {
3000
- "text": "6.8.0",
3001
- "name": "since"
3002
- }
3003
- ],
3004
- "docs": "Configure the plugin to keep the URL path after a reload.\nWARNING: When a reload is triggered, 'window.history' will be cleared.",
3005
- "complexTypes": [],
3006
- "type": "boolean | undefined"
2982
+ "name": "UPDATE_IN_PROGRESS",
2983
+ "value": "3",
2984
+ "tags": [],
2985
+ "docs": "An update is currently being downloaded or installed."
2986
+ }
2987
+ ]
2988
+ },
2989
+ {
2990
+ "name": "AppUpdateResultCode",
2991
+ "slug": "appupdateresultcode",
2992
+ "members": [
2993
+ {
2994
+ "name": "OK",
2995
+ "value": "0",
2996
+ "tags": [],
2997
+ "docs": "The update completed successfully."
3007
2998
  },
3008
2999
  {
3009
- "name": "disableJSLogging",
3010
- "tags": [
3011
- {
3012
- "text": "false",
3013
- "name": "default"
3014
- },
3015
- {
3016
- "text": "7.3.0",
3017
- "name": "since"
3018
- }
3019
- ],
3020
- "docs": "Disable the JavaScript logging of the plugin. if true, the plugin will not log to the JavaScript console. only the native log will be done",
3021
- "complexTypes": [],
3022
- "type": "boolean | undefined"
3000
+ "name": "CANCELED",
3001
+ "value": "1",
3002
+ "tags": [],
3003
+ "docs": "The user canceled the update."
3023
3004
  },
3024
3005
  {
3025
- "name": "shakeMenu",
3026
- "tags": [
3027
- {
3028
- "text": "false",
3029
- "name": "default"
3030
- },
3031
- {
3032
- "text": "7.5.0",
3033
- "name": "since"
3034
- }
3035
- ],
3036
- "docs": "Enable shake gesture to show update menu for debugging/testing purposes",
3037
- "complexTypes": [],
3038
- "type": "boolean | undefined"
3006
+ "name": "FAILED",
3007
+ "value": "2",
3008
+ "tags": [],
3009
+ "docs": "The update failed."
3010
+ },
3011
+ {
3012
+ "name": "NOT_AVAILABLE",
3013
+ "value": "3",
3014
+ "tags": [],
3015
+ "docs": "No update is available."
3016
+ },
3017
+ {
3018
+ "name": "NOT_ALLOWED",
3019
+ "value": "4",
3020
+ "tags": [],
3021
+ "docs": "The requested update type is not allowed.\nFor example, trying to perform an immediate update when only flexible is allowed."
3022
+ },
3023
+ {
3024
+ "name": "INFO_MISSING",
3025
+ "value": "5",
3026
+ "tags": [],
3027
+ "docs": "Required information is missing.\nThis can happen if {@link CapacitorUpdaterPlugin.getAppUpdateInfo} wasn't called first."
3039
3028
  }
3040
- ],
3041
- "docs": "CapacitorUpdater can be configured with these options:"
3029
+ ]
3042
3030
  }
3043
- ]
3031
+ ],
3032
+ "typeAliases": [
3033
+ {
3034
+ "name": "BundleStatus",
3035
+ "slug": "bundlestatus",
3036
+ "docs": "pending: The bundle is pending to be **SET** as the next bundle.\ndownloading: The bundle is being downloaded.\nsuccess: The bundle has been downloaded and is ready to be **SET** as the next bundle.\nerror: The bundle has failed to download.",
3037
+ "types": [
3038
+ {
3039
+ "text": "'success'",
3040
+ "complexTypes": []
3041
+ },
3042
+ {
3043
+ "text": "'error'",
3044
+ "complexTypes": []
3045
+ },
3046
+ {
3047
+ "text": "'pending'",
3048
+ "complexTypes": []
3049
+ },
3050
+ {
3051
+ "text": "'downloading'",
3052
+ "complexTypes": []
3053
+ }
3054
+ ]
3055
+ },
3056
+ {
3057
+ "name": "DelayUntilNext",
3058
+ "slug": "delayuntilnext",
3059
+ "docs": "",
3060
+ "types": [
3061
+ {
3062
+ "text": "'background'",
3063
+ "complexTypes": []
3064
+ },
3065
+ {
3066
+ "text": "'kill'",
3067
+ "complexTypes": []
3068
+ },
3069
+ {
3070
+ "text": "'nativeVersion'",
3071
+ "complexTypes": []
3072
+ },
3073
+ {
3074
+ "text": "'date'",
3075
+ "complexTypes": []
3076
+ }
3077
+ ]
3078
+ },
3079
+ {
3080
+ "name": "BreakingAvailableEvent",
3081
+ "slug": "breakingavailableevent",
3082
+ "docs": "Payload emitted by {@link CapacitorUpdaterPlugin.addListener} with `breakingAvailable`.",
3083
+ "types": [
3084
+ {
3085
+ "text": "MajorAvailableEvent",
3086
+ "complexTypes": [
3087
+ "MajorAvailableEvent"
3088
+ ]
3089
+ }
3090
+ ]
3091
+ }
3092
+ ],
3093
+ "pluginConfigs": []
3044
3094
  }