react-native-bspatch 1.0.2 → 1.0.4

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.
@@ -12,6 +12,7 @@ var _otaLogger = require("./otaLogger");
12
12
  var _otaMetadata = require("./otaMetadata");
13
13
  var _CustomStorage = require("./storage/CustomStorage");
14
14
  var _GitHubReleaseStorage = require("./storage/GitHubReleaseStorage");
15
+ var _GitHubRawStorage = require("./storage/GitHubRawStorage");
15
16
  var _types = require("./types");
16
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
18
  /**
@@ -34,6 +35,7 @@ const OTA_DIR = `${_reactNativeBlobUtil.default.fs.dirs.DocumentDir}/ota`;
34
35
 
35
36
  const DEFAULT_STORAGE = new _CustomStorage.CustomStorageProvider();
36
37
  const GITHUB_STORAGE = new _GitHubReleaseStorage.GitHubReleaseStorageProvider();
38
+ const GITHUB_RAW_STORAGE = new _GitHubRawStorage.GitHubRawStorageProvider();
37
39
 
38
40
  /**
39
41
  * Get the storage provider for the given configuration.
@@ -42,6 +44,7 @@ const GITHUB_STORAGE = new _GitHubReleaseStorage.GitHubReleaseStorageProvider();
42
44
  const getStorage = config => {
43
45
  if (config.storage) return config.storage;
44
46
  if (config.storageType === _types.OtaStorageType.GITHUB) return GITHUB_STORAGE;
47
+ if (config.storageType === _types.OtaStorageType.GITHUB_RAW) return GITHUB_RAW_STORAGE;
45
48
  return DEFAULT_STORAGE;
46
49
  };
47
50
 
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeBlobUtil","_interopRequireDefault","_cryptoJs","_NativeBsPatch","_otaLogger","_otaMetadata","_CustomStorage","_GitHubReleaseStorage","_types","e","__esModule","default","OTA_DIR","ReactNativeBlobUtil","fs","dirs","DocumentDir","DEFAULT_STORAGE","CustomStorageProvider","GITHUB_STORAGE","GitHubReleaseStorageProvider","getStorage","config","storage","storageType","OtaStorageType","GITHUB","semverGte","a","b","pa","split","map","Number","pb","i","va","vb","exports","verifyHash","path","expectedHash","hash","toLowerCase","verifySignature","filePath","signature","publicKey","fileData","readFile","fileWords","CryptoJS","enc","Base64","parse","keyWords","signatureWords","hmac","HmacSHA256","isValid","toString","__DEV__","console","warn","error","decompressGzip","endsWith","decompressedPath","replace","success","NativeBsPatch","Error","downloadWithRetry","url","destPath","onProgress","headers","retryLimit","network","retry","timeout","timeoutMs","taskRef","task","fileCache","followRedirect","fetch","progress","received","total","percent","Math","floor","cancel","delay","pow","Promise","resolve","setTimeout","fetchOtaManifest","fetchManifest","message","bundledPatches","ASSET_STORE_DIR","downloadAndSyncAssets","assetManifestUrl","version","log","onStatus","OtaStatus","SYNCING_ASSETS","versionDir","manifestPath","exists","mkdir","assets","resp","respInfo","status","manifestData","data","JSON","stringify","writeFile","manifest","filter","isBase","length","processed","downloaded","cached","updateProgress","round","maxConcurrency","index","downloadNext","asset","filename","ext","localPath","assetUrl","getAssetUrl","emit","OtaEvent","DOWNLOAD_SUCCESS","initialWorkers","min","workers","Array","fill","all","getLocalAssetPath","getLocalPatchPath","patch","docDir","id","applyOtaPatchInternal","createOtaLogger","onEvent","ensureOtaDir","totalStart","Date","now","finalBundlePath","getBundlePath","toVersion","baseAppVersion","tempBundle","localPatchPath","minAppVersion","appVersion","VERSION_INCOMPATIBLE","downloadMs","patchSizeBytes","fromCache","stat","size","DOWNLOAD_START","DOWNLOADING","dlStart","getUpdateFileUrl","durationMs","sizeKB","dlError","DOWNLOAD_FAIL","actualPatchPath","compressed","DECOMPRESS_START","APPLYING","DECOMPRESS_SUCCESS","sigValid","SIGNATURE_INVALID","manifestUrl","metadata","loadMetadata","oldBundlePath","currentVersion","bundleFilename","Platform","OS","actualOldPath","otaStoredPath","extractBundleFromAssets","oldStat","patchStat","baseHash","HASH_VERIFY_START","actualSourceHash","srcSize","srcStat","fromVersion","HASH_MISMATCH","expected","actual","HASH_VERIFY_SUCCESS","PATCH_START","applyStart","applyPatch","applyMs","PATCH_FAIL","bundleHash","unlink","mv","newMetadata","registerNewVersion","saveMetadata","totalMs","PATCH_SUCCESS","SUCCESS","patchSizeKB","markAsHealthy","reloadBundle","fullBundleUrl","actualHash","fallbackError","ERROR"],"sourceRoot":"../../../src","sources":["ota/otaCore.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeBlobUtil","_interopRequireDefault","_cryptoJs","_NativeBsPatch","_otaLogger","_otaMetadata","_CustomStorage","_GitHubReleaseStorage","_GitHubRawStorage","_types","e","__esModule","default","OTA_DIR","ReactNativeBlobUtil","fs","dirs","DocumentDir","DEFAULT_STORAGE","CustomStorageProvider","GITHUB_STORAGE","GitHubReleaseStorageProvider","GITHUB_RAW_STORAGE","GitHubRawStorageProvider","getStorage","config","storage","storageType","OtaStorageType","GITHUB","GITHUB_RAW","semverGte","a","b","pa","split","map","Number","pb","i","va","vb","exports","verifyHash","path","expectedHash","hash","toLowerCase","verifySignature","filePath","signature","publicKey","fileData","readFile","fileWords","CryptoJS","enc","Base64","parse","keyWords","signatureWords","hmac","HmacSHA256","isValid","toString","__DEV__","console","warn","error","decompressGzip","endsWith","decompressedPath","replace","success","NativeBsPatch","Error","downloadWithRetry","url","destPath","onProgress","headers","retryLimit","network","retry","timeout","timeoutMs","taskRef","task","fileCache","followRedirect","fetch","progress","received","total","percent","Math","floor","cancel","delay","pow","Promise","resolve","setTimeout","fetchOtaManifest","fetchManifest","message","bundledPatches","ASSET_STORE_DIR","downloadAndSyncAssets","assetManifestUrl","version","log","onStatus","OtaStatus","SYNCING_ASSETS","versionDir","manifestPath","exists","mkdir","assets","resp","respInfo","status","manifestData","data","JSON","stringify","writeFile","manifest","filter","isBase","length","processed","downloaded","cached","updateProgress","round","maxConcurrency","index","downloadNext","asset","filename","ext","localPath","assetUrl","getAssetUrl","emit","OtaEvent","DOWNLOAD_SUCCESS","initialWorkers","min","workers","Array","fill","all","getLocalAssetPath","getLocalPatchPath","patch","docDir","id","applyOtaPatchInternal","createOtaLogger","onEvent","ensureOtaDir","totalStart","Date","now","finalBundlePath","getBundlePath","toVersion","baseAppVersion","tempBundle","localPatchPath","minAppVersion","appVersion","VERSION_INCOMPATIBLE","downloadMs","patchSizeBytes","fromCache","stat","size","DOWNLOAD_START","DOWNLOADING","dlStart","getUpdateFileUrl","durationMs","sizeKB","dlError","DOWNLOAD_FAIL","actualPatchPath","compressed","DECOMPRESS_START","APPLYING","DECOMPRESS_SUCCESS","sigValid","SIGNATURE_INVALID","manifestUrl","metadata","loadMetadata","oldBundlePath","currentVersion","bundleFilename","Platform","OS","actualOldPath","otaStoredPath","extractBundleFromAssets","oldStat","patchStat","baseHash","HASH_VERIFY_START","actualSourceHash","srcSize","srcStat","fromVersion","HASH_MISMATCH","expected","actual","HASH_VERIFY_SUCCESS","PATCH_START","applyStart","applyPatch","applyMs","PATCH_FAIL","bundleHash","unlink","mv","newMetadata","registerNewVersion","saveMetadata","totalMs","PATCH_SUCCESS","SUCCESS","patchSizeKB","markAsHealthy","reloadBundle","fullBundleUrl","actualHash","fallbackError","ERROR"],"sourceRoot":"../../../src","sources":["ota/otaCore.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GitHubRawStorageProvider = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _reactNativeBlobUtil = _interopRequireDefault(require("react-native-blob-util"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ /**
11
+ * Storage Provider for fetching OTA updates directly from a GitHub Raw repository.
12
+ *
13
+ * Direct URL mapping:
14
+ * - Manifest: `${baseUrl}/${baseFolder}/ota_registry.json`
15
+ * - Patch file: `${baseUrl}/${baseFolder}/${appVersion}/${channel}/${filename}`
16
+ * - Assets: `${baseUrl}/${baseFolder}/assets/${hash}.${ext}`
17
+ */
18
+ class GitHubRawStorageProvider {
19
+ async fetchManifest(config) {
20
+ if (!config.customServer) return config.bundledPatches || [];
21
+ const {
22
+ baseUrl,
23
+ channel,
24
+ baseFolder = 'ota'
25
+ } = config.customServer;
26
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
27
+ const registryUrl = `${normalizedBaseUrl}/${baseFolder}/ota_registry.json`;
28
+ try {
29
+ const res = await _reactNativeBlobUtil.default.fetch('GET', registryUrl);
30
+ if (res.respInfo.status !== 200) {
31
+ throw new Error(`Registry fetch failed with status ${res.respInfo.status}`);
32
+ }
33
+ const registry = typeof res.data === 'string' ? JSON.parse(res.data) : res.data;
34
+ const appGroup = registry?.apps?.[config.appVersion];
35
+ const flavorGroup = appGroup?.flavors?.[channel.toLowerCase()] || appGroup?.flavors?.development;
36
+ if (!flavorGroup?.patches?.length) {
37
+ return config.bundledPatches || [];
38
+ }
39
+ return (flavorGroup.patches || []).filter(p => !p.platform || p.platform.toLowerCase() === _reactNative.Platform.OS.toLowerCase());
40
+ } catch (error) {
41
+ console.warn('[GitHubRawStorage] Manifest fetch error:', error.message);
42
+ return config.bundledPatches || [];
43
+ }
44
+ }
45
+ async getUpdateFileUrl(filename, config) {
46
+ if (!config.customServer) {
47
+ throw new Error('customServer configuration missing');
48
+ }
49
+ const {
50
+ baseUrl,
51
+ baseFolder = 'ota',
52
+ channel
53
+ } = config.customServer;
54
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
55
+ const channelName = channel.toLowerCase();
56
+ return `${normalizedBaseUrl}/${baseFolder}/${config.appVersion}/${channelName}/${filename}`;
57
+ }
58
+ async getAssetUrl(hash, ext, config) {
59
+ if (!config.customServer) return '';
60
+ const {
61
+ baseUrl,
62
+ baseFolder = 'ota'
63
+ } = config.customServer;
64
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
65
+ return `${normalizedBaseUrl}/${baseFolder}/assets/${hash}.${ext}`;
66
+ }
67
+ }
68
+ exports.GitHubRawStorageProvider = GitHubRawStorageProvider;
69
+ //# sourceMappingURL=GitHubRawStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_reactNativeBlobUtil","_interopRequireDefault","e","__esModule","default","GitHubRawStorageProvider","fetchManifest","config","customServer","bundledPatches","baseUrl","channel","baseFolder","normalizedBaseUrl","endsWith","slice","registryUrl","res","ReactNativeBlobUtil","fetch","respInfo","status","Error","registry","data","JSON","parse","appGroup","apps","appVersion","flavorGroup","flavors","toLowerCase","development","patches","length","filter","p","platform","Platform","OS","error","console","warn","message","getUpdateFileUrl","filename","channelName","getAssetUrl","hash","ext","exports"],"sourceRoot":"../../../../src","sources":["ota/storage/GitHubRawStorage.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyD,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,wBAAwB,CAA+B;EAChE,MAAMC,aAAaA,CAACC,MAAiB,EAAuB;IACxD,IAAI,CAACA,MAAM,CAACC,YAAY,EAAE,OAAOD,MAAM,CAACE,cAAc,IAAI,EAAE;IAE5D,MAAM;MAAEC,OAAO;MAAEC,OAAO;MAAEC,UAAU,GAAG;IAAM,CAAC,GAAGL,MAAM,CAACC,YAAY;IACpE,MAAMK,iBAAiB,GAAGH,OAAO,CAACI,QAAQ,CAAC,GAAG,CAAC,GACzCJ,OAAO,CAACK,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACpBL,OAAO;IACb,MAAMM,WAAW,GAAG,GAAGH,iBAAiB,IAAID,UAAU,oBAAoB;IAE1E,IAAI;MACA,MAAMK,GAAG,GAAG,MAAMC,4BAAmB,CAACC,KAAK,CAAC,KAAK,EAAEH,WAAW,CAAC;MAC/D,IAAIC,GAAG,CAACG,QAAQ,CAACC,MAAM,KAAK,GAAG,EAAE;QAC7B,MAAM,IAAIC,KAAK,CACX,qCAAqCL,GAAG,CAACG,QAAQ,CAACC,MAAM,EAC5D,CAAC;MACL;MAEA,MAAME,QAAQ,GACV,OAAON,GAAG,CAACO,IAAI,KAAK,QAAQ,GACtBC,IAAI,CAACC,KAAK,CAACT,GAAG,CAACO,IAAI,CAAC,GACpBP,GAAG,CAACO,IAAI;MAElB,MAAMG,QAAQ,GAAGJ,QAAQ,EAAEK,IAAI,GAAGrB,MAAM,CAACsB,UAAU,CAAC;MACpD,MAAMC,WAAW,GACbH,QAAQ,EAAEI,OAAO,GAAGpB,OAAO,CAACqB,WAAW,CAAC,CAAC,CAAC,IAC1CL,QAAQ,EAAEI,OAAO,EAAEE,WAAW;MAElC,IAAI,CAACH,WAAW,EAAEI,OAAO,EAAEC,MAAM,EAAE;QAC/B,OAAO5B,MAAM,CAACE,cAAc,IAAI,EAAE;MACtC;MAEA,OAAO,CAACqB,WAAW,CAACI,OAAO,IAAI,EAAE,EAAEE,MAAM,CACpCC,CAAW,IACR,CAACA,CAAC,CAACC,QAAQ,IACXD,CAAC,CAACC,QAAQ,CAACN,WAAW,CAAC,CAAC,KAAKO,qBAAQ,CAACC,EAAE,CAACR,WAAW,CAAC,CAC7D,CAAC;IACL,CAAC,CAAC,OAAOS,KAAK,EAAE;MACZC,OAAO,CAACC,IAAI,CACR,0CAA0C,EACzCF,KAAK,CAAWG,OACrB,CAAC;MACD,OAAOrC,MAAM,CAACE,cAAc,IAAI,EAAE;IACtC;EACJ;EAEA,MAAMoC,gBAAgBA,CAClBC,QAAgB,EAChBvC,MAAiB,EACF;IACf,IAAI,CAACA,MAAM,CAACC,YAAY,EAAE;MACtB,MAAM,IAAIc,KAAK,CAAC,oCAAoC,CAAC;IACzD;IAEA,MAAM;MAAEZ,OAAO;MAAEE,UAAU,GAAG,KAAK;MAAED;IAAQ,CAAC,GAAGJ,MAAM,CAACC,YAAY;IACpE,MAAMK,iBAAiB,GAAGH,OAAO,CAACI,QAAQ,CAAC,GAAG,CAAC,GACzCJ,OAAO,CAACK,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACpBL,OAAO;IACb,MAAMqC,WAAW,GAAGpC,OAAO,CAACqB,WAAW,CAAC,CAAC;IAEzC,OAAO,GAAGnB,iBAAiB,IAAID,UAAU,IAAIL,MAAM,CAACsB,UAAU,IAAIkB,WAAW,IAAID,QAAQ,EAAE;EAC/F;EAEA,MAAME,WAAWA,CACbC,IAAY,EACZC,GAAW,EACX3C,MAAiB,EACF;IACf,IAAI,CAACA,MAAM,CAACC,YAAY,EAAE,OAAO,EAAE;IAEnC,MAAM;MAAEE,OAAO;MAAEE,UAAU,GAAG;IAAM,CAAC,GAAGL,MAAM,CAACC,YAAY;IAC3D,MAAMK,iBAAiB,GAAGH,OAAO,CAACI,QAAQ,CAAC,GAAG,CAAC,GACzCJ,OAAO,CAACK,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACpBL,OAAO;IAEb,OAAO,GAAGG,iBAAiB,IAAID,UAAU,WAAWqC,IAAI,IAAIC,GAAG,EAAE;EACrE;AACJ;AAACC,OAAA,CAAA9C,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -19,6 +19,8 @@ let OtaStorageType = exports.OtaStorageType = /*#__PURE__*/function (OtaStorageT
19
19
  OtaStorageType["CUSTOM"] = "CUSTOM";
20
20
  /** GitHub Releases — public or token-authenticated */
21
21
  OtaStorageType["GITHUB"] = "GITHUB";
22
+ /** GitHub Raw repository storage */
23
+ OtaStorageType["GITHUB_RAW"] = "GITHUB_RAW";
22
24
  return OtaStorageType;
23
25
  }({});
24
26
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["OtaUpdateMode","exports","OtaStorageType","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AAFA,IAuBYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAA,IAObE,cAAc,GAAAD,OAAA,CAAAC,cAAA,0BAAdA,cAAc;EACtB;EADQA,cAAc;EAGtB;EAHQA,cAAc;EAAA,OAAdA,cAAc;AAAA;AA4C1B;AACA;AACA;AAFA,IAiHYC,SAAS,GAAAF,OAAA,CAAAE,SAAA,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["OtaUpdateMode","exports","OtaStorageType","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AAFA,IAuBYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAA,IAObE,cAAc,GAAAD,OAAA,CAAAC,cAAA,0BAAdA,cAAc;EACtB;EADQA,cAAc;EAGtB;EAHQA,cAAc;EAKtB;EALQA,cAAc;EAAA,OAAdA,cAAc;AAAA;AA8C1B;AACA;AACA;AAFA,IAiHYC,SAAS,GAAAF,OAAA,CAAAE,SAAA,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
@@ -22,6 +22,7 @@ import { createOtaLogger, OtaEvent } from './otaLogger';
22
22
  import { ensureOtaDir, getBundlePath, loadMetadata, registerNewVersion, saveMetadata } from './otaMetadata';
23
23
  import { CustomStorageProvider } from './storage/CustomStorage';
24
24
  import { GitHubReleaseStorageProvider } from './storage/GitHubReleaseStorage';
25
+ import { GitHubRawStorageProvider } from './storage/GitHubRawStorage';
25
26
  import { OtaStatus, OtaStorageType } from './types';
26
27
  const OTA_DIR = `${ReactNativeBlobUtil.fs.dirs.DocumentDir}/ota`;
27
28
 
@@ -29,6 +30,7 @@ const OTA_DIR = `${ReactNativeBlobUtil.fs.dirs.DocumentDir}/ota`;
29
30
 
30
31
  const DEFAULT_STORAGE = new CustomStorageProvider();
31
32
  const GITHUB_STORAGE = new GitHubReleaseStorageProvider();
33
+ const GITHUB_RAW_STORAGE = new GitHubRawStorageProvider();
32
34
 
33
35
  /**
34
36
  * Get the storage provider for the given configuration.
@@ -37,6 +39,7 @@ const GITHUB_STORAGE = new GitHubReleaseStorageProvider();
37
39
  const getStorage = config => {
38
40
  if (config.storage) return config.storage;
39
41
  if (config.storageType === OtaStorageType.GITHUB) return GITHUB_STORAGE;
42
+ if (config.storageType === OtaStorageType.GITHUB_RAW) return GITHUB_RAW_STORAGE;
40
43
  return DEFAULT_STORAGE;
41
44
  };
42
45
 
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","ReactNativeBlobUtil","CryptoJS","NativeBsPatch","createOtaLogger","OtaEvent","ensureOtaDir","getBundlePath","loadMetadata","registerNewVersion","saveMetadata","CustomStorageProvider","GitHubReleaseStorageProvider","OtaStatus","OtaStorageType","OTA_DIR","fs","dirs","DocumentDir","DEFAULT_STORAGE","GITHUB_STORAGE","getStorage","config","storage","storageType","GITHUB","semverGte","a","b","pa","split","map","Number","pb","i","va","vb","verifyHash","path","expectedHash","hash","toLowerCase","verifySignature","filePath","signature","publicKey","fileData","readFile","fileWords","enc","Base64","parse","keyWords","signatureWords","hmac","HmacSHA256","isValid","toString","__DEV__","console","warn","error","decompressGzip","endsWith","decompressedPath","replace","success","Error","downloadWithRetry","url","destPath","onProgress","headers","retryLimit","network","retry","timeout","timeoutMs","taskRef","task","fileCache","followRedirect","fetch","progress","received","total","percent","Math","floor","cancel","e","delay","pow","Promise","resolve","setTimeout","fetchOtaManifest","fetchManifest","message","bundledPatches","ASSET_STORE_DIR","downloadAndSyncAssets","assetManifestUrl","version","log","onStatus","SYNCING_ASSETS","versionDir","manifestPath","exists","mkdir","assets","resp","respInfo","status","manifestData","data","JSON","stringify","writeFile","manifest","filter","isBase","length","processed","downloaded","cached","updateProgress","round","maxConcurrency","index","downloadNext","asset","filename","ext","localPath","assetUrl","getAssetUrl","emit","DOWNLOAD_SUCCESS","initialWorkers","min","workers","Array","fill","all","getLocalAssetPath","getLocalPatchPath","patch","docDir","id","applyOtaPatchInternal","onEvent","totalStart","Date","now","finalBundlePath","toVersion","baseAppVersion","tempBundle","localPatchPath","minAppVersion","appVersion","VERSION_INCOMPATIBLE","downloadMs","patchSizeBytes","fromCache","stat","size","DOWNLOAD_START","DOWNLOADING","dlStart","getUpdateFileUrl","durationMs","sizeKB","dlError","DOWNLOAD_FAIL","actualPatchPath","compressed","DECOMPRESS_START","APPLYING","DECOMPRESS_SUCCESS","sigValid","SIGNATURE_INVALID","manifestUrl","metadata","oldBundlePath","currentVersion","bundleFilename","OS","actualOldPath","otaStoredPath","extractBundleFromAssets","oldStat","patchStat","baseHash","HASH_VERIFY_START","actualSourceHash","srcSize","srcStat","fromVersion","HASH_MISMATCH","expected","actual","HASH_VERIFY_SUCCESS","PATCH_START","applyStart","applyPatch","applyMs","PATCH_FAIL","bundleHash","unlink","mv","newMetadata","totalMs","PATCH_SUCCESS","SUCCESS","patchSizeKB","markAsHealthy","reloadBundle","fullBundleUrl","actualHash","fallbackError","ERROR"],"sourceRoot":"../../../src","sources":["ota/otaCore.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","ReactNativeBlobUtil","CryptoJS","NativeBsPatch","createOtaLogger","OtaEvent","ensureOtaDir","getBundlePath","loadMetadata","registerNewVersion","saveMetadata","CustomStorageProvider","GitHubReleaseStorageProvider","GitHubRawStorageProvider","OtaStatus","OtaStorageType","OTA_DIR","fs","dirs","DocumentDir","DEFAULT_STORAGE","GITHUB_STORAGE","GITHUB_RAW_STORAGE","getStorage","config","storage","storageType","GITHUB","GITHUB_RAW","semverGte","a","b","pa","split","map","Number","pb","i","va","vb","verifyHash","path","expectedHash","hash","toLowerCase","verifySignature","filePath","signature","publicKey","fileData","readFile","fileWords","enc","Base64","parse","keyWords","signatureWords","hmac","HmacSHA256","isValid","toString","__DEV__","console","warn","error","decompressGzip","endsWith","decompressedPath","replace","success","Error","downloadWithRetry","url","destPath","onProgress","headers","retryLimit","network","retry","timeout","timeoutMs","taskRef","task","fileCache","followRedirect","fetch","progress","received","total","percent","Math","floor","cancel","e","delay","pow","Promise","resolve","setTimeout","fetchOtaManifest","fetchManifest","message","bundledPatches","ASSET_STORE_DIR","downloadAndSyncAssets","assetManifestUrl","version","log","onStatus","SYNCING_ASSETS","versionDir","manifestPath","exists","mkdir","assets","resp","respInfo","status","manifestData","data","JSON","stringify","writeFile","manifest","filter","isBase","length","processed","downloaded","cached","updateProgress","round","maxConcurrency","index","downloadNext","asset","filename","ext","localPath","assetUrl","getAssetUrl","emit","DOWNLOAD_SUCCESS","initialWorkers","min","workers","Array","fill","all","getLocalAssetPath","getLocalPatchPath","patch","docDir","id","applyOtaPatchInternal","onEvent","totalStart","Date","now","finalBundlePath","toVersion","baseAppVersion","tempBundle","localPatchPath","minAppVersion","appVersion","VERSION_INCOMPATIBLE","downloadMs","patchSizeBytes","fromCache","stat","size","DOWNLOAD_START","DOWNLOADING","dlStart","getUpdateFileUrl","durationMs","sizeKB","dlError","DOWNLOAD_FAIL","actualPatchPath","compressed","DECOMPRESS_START","APPLYING","DECOMPRESS_SUCCESS","sigValid","SIGNATURE_INVALID","manifestUrl","metadata","oldBundlePath","currentVersion","bundleFilename","OS","actualOldPath","otaStoredPath","extractBundleFromAssets","oldStat","patchStat","baseHash","HASH_VERIFY_START","actualSourceHash","srcSize","srcStat","fromVersion","HASH_MISMATCH","expected","actual","HASH_VERIFY_SUCCESS","PATCH_START","applyStart","applyPatch","applyMs","PATCH_FAIL","bundleHash","unlink","mv","newMetadata","totalMs","PATCH_SUCCESS","SUCCESS","patchSizeKB","markAsHealthy","reloadBundle","fullBundleUrl","actualHash","fallbackError","ERROR"],"sourceRoot":"../../../src","sources":["ota/otaCore.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ import ReactNativeBlobUtil from 'react-native-blob-util';
5
+ /**
6
+ * Storage Provider for fetching OTA updates directly from a GitHub Raw repository.
7
+ *
8
+ * Direct URL mapping:
9
+ * - Manifest: `${baseUrl}/${baseFolder}/ota_registry.json`
10
+ * - Patch file: `${baseUrl}/${baseFolder}/${appVersion}/${channel}/${filename}`
11
+ * - Assets: `${baseUrl}/${baseFolder}/assets/${hash}.${ext}`
12
+ */
13
+ export class GitHubRawStorageProvider {
14
+ async fetchManifest(config) {
15
+ if (!config.customServer) return config.bundledPatches || [];
16
+ const {
17
+ baseUrl,
18
+ channel,
19
+ baseFolder = 'ota'
20
+ } = config.customServer;
21
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
22
+ const registryUrl = `${normalizedBaseUrl}/${baseFolder}/ota_registry.json`;
23
+ try {
24
+ const res = await ReactNativeBlobUtil.fetch('GET', registryUrl);
25
+ if (res.respInfo.status !== 200) {
26
+ throw new Error(`Registry fetch failed with status ${res.respInfo.status}`);
27
+ }
28
+ const registry = typeof res.data === 'string' ? JSON.parse(res.data) : res.data;
29
+ const appGroup = registry?.apps?.[config.appVersion];
30
+ const flavorGroup = appGroup?.flavors?.[channel.toLowerCase()] || appGroup?.flavors?.development;
31
+ if (!flavorGroup?.patches?.length) {
32
+ return config.bundledPatches || [];
33
+ }
34
+ return (flavorGroup.patches || []).filter(p => !p.platform || p.platform.toLowerCase() === Platform.OS.toLowerCase());
35
+ } catch (error) {
36
+ console.warn('[GitHubRawStorage] Manifest fetch error:', error.message);
37
+ return config.bundledPatches || [];
38
+ }
39
+ }
40
+ async getUpdateFileUrl(filename, config) {
41
+ if (!config.customServer) {
42
+ throw new Error('customServer configuration missing');
43
+ }
44
+ const {
45
+ baseUrl,
46
+ baseFolder = 'ota',
47
+ channel
48
+ } = config.customServer;
49
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
50
+ const channelName = channel.toLowerCase();
51
+ return `${normalizedBaseUrl}/${baseFolder}/${config.appVersion}/${channelName}/${filename}`;
52
+ }
53
+ async getAssetUrl(hash, ext, config) {
54
+ if (!config.customServer) return '';
55
+ const {
56
+ baseUrl,
57
+ baseFolder = 'ota'
58
+ } = config.customServer;
59
+ const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
60
+ return `${normalizedBaseUrl}/${baseFolder}/assets/${hash}.${ext}`;
61
+ }
62
+ }
63
+ //# sourceMappingURL=GitHubRawStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","ReactNativeBlobUtil","GitHubRawStorageProvider","fetchManifest","config","customServer","bundledPatches","baseUrl","channel","baseFolder","normalizedBaseUrl","endsWith","slice","registryUrl","res","fetch","respInfo","status","Error","registry","data","JSON","parse","appGroup","apps","appVersion","flavorGroup","flavors","toLowerCase","development","patches","length","filter","p","platform","OS","error","console","warn","message","getUpdateFileUrl","filename","channelName","getAssetUrl","hash","ext"],"sourceRoot":"../../../../src","sources":["ota/storage/GitHubRawStorage.ts"],"mappings":"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","ignoreList":[]}
@@ -16,6 +16,8 @@ export let OtaStorageType = /*#__PURE__*/function (OtaStorageType) {
16
16
  OtaStorageType["CUSTOM"] = "CUSTOM";
17
17
  /** GitHub Releases — public or token-authenticated */
18
18
  OtaStorageType["GITHUB"] = "GITHUB";
19
+ /** GitHub Raw repository storage */
20
+ OtaStorageType["GITHUB_RAW"] = "GITHUB_RAW";
19
21
  return OtaStorageType;
20
22
  }({});
21
23
 
@@ -1 +1 @@
1
- {"version":3,"names":["OtaUpdateMode","OtaStorageType","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;AAAA;AACA;AACA;;AAqBA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAOzB,WAAYC,cAAc,0BAAdA,cAAc;EACtB;EADQA,cAAc;EAGtB;EAHQA,cAAc;EAAA,OAAdA,cAAc;AAAA;;AA4C1B;AACA;AACA;;AA+GA,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["OtaUpdateMode","OtaStorageType","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;AAAA;AACA;AACA;;AAqBA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAOzB,WAAYC,cAAc,0BAAdA,cAAc;EACtB;EADQA,cAAc;EAGtB;EAHQA,cAAc;EAKtB;EALQA,cAAc;EAAA,OAAdA,cAAc;AAAA;;AA8C1B;AACA;AACA;;AA+GA,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"otaCore.d.ts","sourceRoot":"","sources":["../../../src/ota/otaCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAgBH,OAAO,EACH,SAAS,EAGT,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,QAAQ,EAEhB,MAAM,SAAS,CAAC;AAqBjB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,OAUhD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GACnB,MAAM,MAAM,EACZ,eAAe,MAAM,KACtB,OAAO,CAAC,OAAO,CAQjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe,GACxB,UAAU,MAAM,EAChB,YAAY,MAAM,EAClB,YAAY,MAAM,KACnB,OAAO,CAAC,OAAO,CA4BjB,CAAC;AA0FF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GACzB,QAAQ,SAAS,KAClB,OAAO,CAAC,QAAQ,EAAE,CAWpB,CAAC;AAyLF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,KAAK,MAAM,KAAG,MACvB,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,QAAQ,EAAE,QAAQ,MAAM,KAAG,MACzB,CAAC;AAI5C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,GAC9B,OAAO,QAAQ,EACf,QAAQ,SAAS,EACjB,UAAU,CACN,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,UAAU,KACnB,IAAI,EACT,YAAY,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,kBAycxC,CAAC"}
1
+ {"version":3,"file":"otaCore.d.ts","sourceRoot":"","sources":["../../../src/ota/otaCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAiBH,OAAO,EACH,SAAS,EAGT,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,QAAQ,EAEhB,MAAM,SAAS,CAAC;AAuBjB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,KAAG,OAUhD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GACnB,MAAM,MAAM,EACZ,eAAe,MAAM,KACtB,OAAO,CAAC,OAAO,CAQjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe,GACxB,UAAU,MAAM,EAChB,YAAY,MAAM,EAClB,YAAY,MAAM,KACnB,OAAO,CAAC,OAAO,CA4BjB,CAAC;AA0FF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GACzB,QAAQ,SAAS,KAClB,OAAO,CAAC,QAAQ,EAAE,CAWpB,CAAC;AAyLF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,KAAK,MAAM,KAAG,MACvB,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,QAAQ,EAAE,QAAQ,MAAM,KAAG,MACzB,CAAC;AAI5C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,GAC9B,OAAO,QAAQ,EACf,QAAQ,SAAS,EACjB,UAAU,CACN,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,UAAU,KACnB,IAAI,EACT,YAAY,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,kBAycxC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { OtaConfig, OtaPatch, OtaStorageProvider } from '../types';
2
+ /**
3
+ * Storage Provider for fetching OTA updates directly from a GitHub Raw repository.
4
+ *
5
+ * Direct URL mapping:
6
+ * - Manifest: `${baseUrl}/${baseFolder}/ota_registry.json`
7
+ * - Patch file: `${baseUrl}/${baseFolder}/${appVersion}/${channel}/${filename}`
8
+ * - Assets: `${baseUrl}/${baseFolder}/assets/${hash}.${ext}`
9
+ */
10
+ export declare class GitHubRawStorageProvider implements OtaStorageProvider {
11
+ fetchManifest(config: OtaConfig): Promise<OtaPatch[]>;
12
+ getUpdateFileUrl(filename: string, config: OtaConfig): Promise<string>;
13
+ getAssetUrl(hash: string, ext: string, config: OtaConfig): Promise<string>;
14
+ }
15
+ //# sourceMappingURL=GitHubRawStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GitHubRawStorage.d.ts","sourceRoot":"","sources":["../../../../src/ota/storage/GitHubRawStorage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAExE;;;;;;;GAOG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IACzD,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA6CrD,gBAAgB,CAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;IAcZ,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;CAUrB"}
@@ -26,7 +26,9 @@ export declare enum OtaStorageType {
26
26
  /** Custom storage server (primary) */
27
27
  CUSTOM = "CUSTOM",
28
28
  /** GitHub Releases — public or token-authenticated */
29
- GITHUB = "GITHUB"
29
+ GITHUB = "GITHUB",
30
+ /** GitHub Raw repository storage */
31
+ GITHUB_RAW = "GITHUB_RAW"
30
32
  }
31
33
  export type OtaPatch = {
32
34
  /** Unique ID: `v{from}-to-v{to}` */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ota/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEtD;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9E;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;CAC9C;AAED,oBAAY,cAAc;IACtB,sCAAsC;IACtC,MAAM,WAAW;IACjB,sDAAsD;IACtD,MAAM,WAAW;CACpB;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE5B,gCAAgC;IAChC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B,yDAAyD;IACzD,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uBAAuB;IACvB,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7B,uEAAuE;IACvE,aAAa,CAAC,EAAE;QACZ,8CAA8C;QAC9C,IAAI,EAAE,MAAM,CAAC;QACb,oDAAoD;QACpD,GAAG,EAAE,MAAM,CAAC;QACZ;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB;;;WAGG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF,0CAA0C;IAC1C,YAAY,CAAC,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,8DAA8D;QAC9D,SAAS,CAAC,EAAE;YACR,0DAA0D;YAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,8EAA8E;YAC9E,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,yEAAyE;YACzE,YAAY,CAAC,EAAE,MAAM,CAAC;SACzB,CAAC;KACL,CAAC;IAEF,8EAA8E;IAC9E,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,oBAAY,SAAS;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,KAAK,UAAU;CAClB;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ota/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEtD;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9E;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;CAC9C;AAED,oBAAY,cAAc;IACtB,sCAAsC;IACtC,MAAM,WAAW;IACjB,sDAAsD;IACtD,MAAM,WAAW;IACjB,oCAAoC;IACpC,UAAU,eAAe;CAC5B;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE5B,gCAAgC;IAChC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B,yDAAyD;IACzD,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uBAAuB;IACvB,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7B,uEAAuE;IACvE,aAAa,CAAC,EAAE;QACZ,8CAA8C;QAC9C,IAAI,EAAE,MAAM,CAAC;QACb,oDAAoD;QACpD,GAAG,EAAE,MAAM,CAAC;QACZ;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB;;;WAGG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF,0CAA0C;IAC1C,YAAY,CAAC,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,8DAA8D;QAC9D,SAAS,CAAC,EAAE;YACR,0DAA0D;YAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,8EAA8E;YAC9E,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,yEAAyE;YACzE,YAAY,CAAC,EAAE,MAAM,CAAC;SACzB,CAAC;KACL,CAAC;IAEF,8EAA8E;IAC9E,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,oBAAY,SAAS;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,KAAK,UAAU;CAClB;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-bspatch",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "Premium OTA Update Solution for React Native using TurboModules and bsdiff",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -26,6 +26,7 @@ import {
26
26
  } from './otaMetadata';
27
27
  import { CustomStorageProvider } from './storage/CustomStorage';
28
28
  import { GitHubReleaseStorageProvider } from './storage/GitHubReleaseStorage';
29
+ import { GitHubRawStorageProvider } from './storage/GitHubRawStorage';
29
30
  import {
30
31
  OtaStatus,
31
32
  OtaStorageType,
@@ -42,6 +43,7 @@ const OTA_DIR = `${ReactNativeBlobUtil.fs.dirs.DocumentDir}/ota`;
42
43
 
43
44
  const DEFAULT_STORAGE = new CustomStorageProvider();
44
45
  const GITHUB_STORAGE = new GitHubReleaseStorageProvider();
46
+ const GITHUB_RAW_STORAGE = new GitHubRawStorageProvider();
45
47
 
46
48
  /**
47
49
  * Get the storage provider for the given configuration.
@@ -50,6 +52,7 @@ const GITHUB_STORAGE = new GitHubReleaseStorageProvider();
50
52
  const getStorage = (config: OtaConfig): OtaStorageProvider => {
51
53
  if (config.storage) return config.storage;
52
54
  if (config.storageType === OtaStorageType.GITHUB) return GITHUB_STORAGE;
55
+ if (config.storageType === OtaStorageType.GITHUB_RAW) return GITHUB_RAW_STORAGE;
53
56
  return DEFAULT_STORAGE;
54
57
  };
55
58
 
@@ -0,0 +1,90 @@
1
+ import { Platform } from 'react-native';
2
+ import ReactNativeBlobUtil from 'react-native-blob-util';
3
+ import type { OtaConfig, OtaPatch, OtaStorageProvider } from '../types';
4
+
5
+ /**
6
+ * Storage Provider for fetching OTA updates directly from a GitHub Raw repository.
7
+ *
8
+ * Direct URL mapping:
9
+ * - Manifest: `${baseUrl}/${baseFolder}/ota_registry.json`
10
+ * - Patch file: `${baseUrl}/${baseFolder}/${appVersion}/${channel}/${filename}`
11
+ * - Assets: `${baseUrl}/${baseFolder}/assets/${hash}.${ext}`
12
+ */
13
+ export class GitHubRawStorageProvider implements OtaStorageProvider {
14
+ async fetchManifest(config: OtaConfig): Promise<OtaPatch[]> {
15
+ if (!config.customServer) return config.bundledPatches || [];
16
+
17
+ const { baseUrl, channel, baseFolder = 'ota' } = config.customServer;
18
+ const normalizedBaseUrl = baseUrl.endsWith('/')
19
+ ? baseUrl.slice(0, -1)
20
+ : baseUrl;
21
+ const registryUrl = `${normalizedBaseUrl}/${baseFolder}/ota_registry.json`;
22
+
23
+ try {
24
+ const res = await ReactNativeBlobUtil.fetch('GET', registryUrl);
25
+ if (res.respInfo.status !== 200) {
26
+ throw new Error(
27
+ `Registry fetch failed with status ${res.respInfo.status}`,
28
+ );
29
+ }
30
+
31
+ const registry =
32
+ typeof res.data === 'string'
33
+ ? JSON.parse(res.data)
34
+ : res.data;
35
+
36
+ const appGroup = registry?.apps?.[config.appVersion];
37
+ const flavorGroup =
38
+ appGroup?.flavors?.[channel.toLowerCase()] ||
39
+ appGroup?.flavors?.development;
40
+
41
+ if (!flavorGroup?.patches?.length) {
42
+ return config.bundledPatches || [];
43
+ }
44
+
45
+ return (flavorGroup.patches || []).filter(
46
+ (p: OtaPatch) =>
47
+ !p.platform ||
48
+ p.platform.toLowerCase() === Platform.OS.toLowerCase(),
49
+ );
50
+ } catch (error) {
51
+ console.warn(
52
+ '[GitHubRawStorage] Manifest fetch error:',
53
+ (error as Error).message,
54
+ );
55
+ return config.bundledPatches || [];
56
+ }
57
+ }
58
+
59
+ async getUpdateFileUrl(
60
+ filename: string,
61
+ config: OtaConfig,
62
+ ): Promise<string> {
63
+ if (!config.customServer) {
64
+ throw new Error('customServer configuration missing');
65
+ }
66
+
67
+ const { baseUrl, baseFolder = 'ota', channel } = config.customServer;
68
+ const normalizedBaseUrl = baseUrl.endsWith('/')
69
+ ? baseUrl.slice(0, -1)
70
+ : baseUrl;
71
+ const channelName = channel.toLowerCase();
72
+
73
+ return `${normalizedBaseUrl}/${baseFolder}/${config.appVersion}/${channelName}/${filename}`;
74
+ }
75
+
76
+ async getAssetUrl(
77
+ hash: string,
78
+ ext: string,
79
+ config: OtaConfig,
80
+ ): Promise<string> {
81
+ if (!config.customServer) return '';
82
+
83
+ const { baseUrl, baseFolder = 'ota' } = config.customServer;
84
+ const normalizedBaseUrl = baseUrl.endsWith('/')
85
+ ? baseUrl.slice(0, -1)
86
+ : baseUrl;
87
+
88
+ return `${normalizedBaseUrl}/${baseFolder}/assets/${hash}.${ext}`;
89
+ }
90
+ }
package/src/ota/types.ts CHANGED
@@ -33,6 +33,8 @@ export enum OtaStorageType {
33
33
  CUSTOM = 'CUSTOM',
34
34
  /** GitHub Releases — public or token-authenticated */
35
35
  GITHUB = 'GITHUB',
36
+ /** GitHub Raw repository storage */
37
+ GITHUB_RAW = 'GITHUB_RAW',
36
38
  }
37
39
 
38
40
  export type OtaPatch = {
@@ -44,11 +44,13 @@ FLAVOR="dev"
44
44
  ACTION="ota"
45
45
  PLATFORM_ARG=""
46
46
 
47
+ PUSH_REMOTE=false
47
48
  # Arg parsing
48
49
  while [[ "$#" -gt 0 ]]; do
49
50
  case $1 in
50
51
  --platform) PLATFORM_ARG="$2"; shift ;;
51
52
  --flavor) FLAVOR="$2"; shift ;;
53
+ --push) PUSH_REMOTE=true ;;
52
54
  reset|base) ACTION="$1" ;;
53
55
  setup) ACTION="$1" ;;
54
56
  apk|ipa|seed) ACTION="base" ;; # Compatibility for legacy/seed actions
@@ -196,7 +198,7 @@ fi
196
198
  # ── Reset ─────────────────────────────────────────────────────────────────────
197
199
  if [ "$ACTION" = "reset" ]; then
198
200
  echo "Resetting OTA registry and clearing output..."
199
- rm -f "$REGISTRY_SHARED"
201
+ echo '{"apps":{}}' > "$REGISTRY_SHARED"
200
202
  # Preserve base-assets manifests so the build after reset can still
201
203
  # correctly identify which assets are already bundled in the base app.
202
204
  # Only delete bundles, patches, manifests and workspace — not base-assets.
@@ -209,6 +211,11 @@ import type { OtaPatch } from 'react-native-bspatch';
209
211
  export const OTA_PATCHES: OtaPatch[] = [];
210
212
  TSEEOF
211
213
  echo " ✓ Registry and output files cleared (base-assets preserved)"
214
+
215
+ if [ "$PUSH_REMOTE" = true ]; then
216
+ echo " Syncing reset state to remote storage..."
217
+ bash "$SCRIPT_DIR/upload_ota_custom.sh" "$APP_VERSION" "$FLAVOR_LOWER" "0" "" "ios" "--clean-remote"
218
+ fi
212
219
  exit 0
213
220
  fi
214
221
 
@@ -42,6 +42,14 @@ if [[ ! -f "$REGISTRY_FILE" ]]; then
42
42
  exit 1
43
43
  fi
44
44
 
45
+ # Check for clean remote flag
46
+ CLEAN_REMOTE=false
47
+ for ARG in "$@"; do
48
+ if [ "$ARG" == "--clean-remote" ]; then
49
+ CLEAN_REMOTE=true
50
+ fi
51
+ done
52
+
45
53
  # ── GitHub Auto-Push Integration ──────────────────────────────────────────────
46
54
  if [[ "$BASE_URL" == *"github"* ]] || [[ "$BASE_URL" == *"raw.githubusercontent"* ]]; then
47
55
  # Parse OWNER, REPO, BRANCH from URL
@@ -84,29 +92,37 @@ if [[ "$BASE_URL" == *"github"* ]] || [[ "$BASE_URL" == *"raw.githubusercontent"
84
92
  git clone --branch "$BRANCH" --depth 1 "$GIT_REMOTE" "$GH_REPO_DIR" 2>/dev/null || git clone "$GIT_REMOTE" "$GH_REPO_DIR"
85
93
  fi
86
94
 
87
- # 2. Copy generated files into storage repo
88
- TARGET_RELEASE_DIR="$GH_REPO_DIR/$BASE_FOLDER/$APP_VERSION/$CHANNEL"
89
- mkdir -p "$TARGET_RELEASE_DIR"
90
-
91
- echo " Copying release files to storage repo..."
92
- for FILE in "$OUTPUT_DIR"/*.{patch,hbc,json}; do
93
- [[ -f "$FILE" ]] || continue
94
- FNAME=$(basename "$FILE")
95
- cp "$FILE" "$TARGET_RELEASE_DIR/$FNAME"
96
- done
95
+ # 2. Copy generated files into storage repo (or reset remote)
96
+ if [ "$CLEAN_REMOTE" = true ]; then
97
+ echo " Resetting remote storage state..."
98
+ rm -rf "$GH_REPO_DIR/$BASE_FOLDER/$APP_VERSION"
99
+ mkdir -p "$GH_REPO_DIR/$BASE_FOLDER"
100
+ cp "$REGISTRY_FILE" "$GH_REPO_DIR/$BASE_FOLDER/ota_registry.json"
101
+ cp "$REGISTRY_FILE" "$GH_REPO_DIR/ota_registry.json" 2>/dev/null || true
102
+ else
103
+ TARGET_RELEASE_DIR="$GH_REPO_DIR/$BASE_FOLDER/$APP_VERSION/$CHANNEL"
104
+ mkdir -p "$TARGET_RELEASE_DIR"
105
+
106
+ echo " Copying release files to storage repo..."
107
+ for FILE in "$OUTPUT_DIR"/*.{patch,hbc,json}; do
108
+ [[ -f "$FILE" ]] || continue
109
+ FNAME=$(basename "$FILE")
110
+ cp "$FILE" "$TARGET_RELEASE_DIR/$FNAME"
111
+ done
112
+
113
+ # Copy asset store if present
114
+ if [[ -d "$OUTPUT_DIR/asset-store" ]]; then
115
+ TARGET_ASSET_DIR="$GH_REPO_DIR/$BASE_FOLDER/assets"
116
+ mkdir -p "$TARGET_ASSET_DIR"
117
+ cp -R "$OUTPUT_DIR/asset-store/"* "$TARGET_ASSET_DIR/" 2>/dev/null || true
118
+ fi
97
119
 
98
- # Copy asset store if present
99
- if [[ -d "$OUTPUT_DIR/asset-store" ]]; then
100
- TARGET_ASSET_DIR="$GH_REPO_DIR/$BASE_FOLDER/assets"
101
- mkdir -p "$TARGET_ASSET_DIR"
102
- cp -R "$OUTPUT_DIR/asset-store/"* "$TARGET_ASSET_DIR/" 2>/dev/null || true
120
+ # Copy ota_registry.json
121
+ mkdir -p "$GH_REPO_DIR/$BASE_FOLDER"
122
+ cp "$REGISTRY_FILE" "$GH_REPO_DIR/$BASE_FOLDER/ota_registry.json"
123
+ cp "$REGISTRY_FILE" "$GH_REPO_DIR/ota_registry.json" 2>/dev/null || true
103
124
  fi
104
125
 
105
- # Copy ota_registry.json
106
- mkdir -p "$GH_REPO_DIR/$BASE_FOLDER"
107
- cp "$REGISTRY_FILE" "$GH_REPO_DIR/$BASE_FOLDER/ota_registry.json"
108
- cp "$REGISTRY_FILE" "$GH_REPO_DIR/ota_registry.json" 2>/dev/null || true
109
-
110
126
  # 3. Commit and Push to GitHub
111
127
  cd "$GH_REPO_DIR"
112
128
  git config user.name "hungbv-taureau" 2>/dev/null || true
@@ -115,8 +131,12 @@ if [[ "$BASE_URL" == *"github"* ]] || [[ "$BASE_URL" == *"raw.githubusercontent"
115
131
  if git diff --staged --quiet; then
116
132
  echo " ✓ Storage repository is up to date (no changes)."
117
133
  else
118
- echo " Committing OTA release (App: $APP_VERSION v$OTA_VERSION)..."
119
- git commit -m "auto(ota): publish $PLATFORM $APP_VERSION v$OTA_VERSION ($CHANNEL)"
134
+ COMMIT_MSG="auto(ota): publish $PLATFORM $APP_VERSION v$OTA_VERSION ($CHANNEL)"
135
+ if [ "$CLEAN_REMOTE" = true ]; then
136
+ COMMIT_MSG="auto(ota): reset remote OTA registry and releases"
137
+ fi
138
+ echo " Committing OTA changes ($COMMIT_MSG)..."
139
+ git commit -m "$COMMIT_MSG"
120
140
  echo " Pushing to GitHub (${BRANCH})..."
121
141
 
122
142
  if git push origin "$BRANCH"; then