react-native-bspatch 1.1.1 → 1.1.2

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.
@@ -28,6 +28,12 @@ const NO_CACHE_HEADERS = {
28
28
 
29
29
  /** Append a timestamp query param to defeat CDN caches on mutable URLs */
30
30
  const bustCache = url => `${url}?cb=${Date.now()}`;
31
+ const normalizeChannel = channel => {
32
+ const lower = channel.toLowerCase();
33
+ if (lower === 'dev') return 'development';
34
+ if (lower === 'prod') return 'production';
35
+ return lower;
36
+ };
31
37
  class GitHubRawStorageProvider {
32
38
  async fetchManifest(config) {
33
39
  if (!config.customServer) return config.bundledPatches || [];
@@ -36,6 +42,7 @@ class GitHubRawStorageProvider {
36
42
  channel,
37
43
  baseFolder = 'ota'
38
44
  } = config.customServer;
45
+ const channelName = normalizeChannel(channel);
39
46
  const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
40
47
  // Cache-bust: registry is mutable; must always fetch the latest version
41
48
  const registryUrl = bustCache(`${normalizedBaseUrl}/${baseFolder}/ota_registry.json`);
@@ -46,7 +53,7 @@ class GitHubRawStorageProvider {
46
53
  }
47
54
  const registry = typeof res.data === 'string' ? JSON.parse(res.data) : res.data;
48
55
  const appGroup = registry?.apps?.[config.appVersion];
49
- const flavorGroup = appGroup?.flavors?.[channel.toLowerCase()] || appGroup?.flavors?.development;
56
+ const flavorGroup = appGroup?.flavors?.[channelName];
50
57
  if (!flavorGroup?.patches?.length) {
51
58
  return config.bundledPatches || [];
52
59
  }
@@ -66,7 +73,7 @@ class GitHubRawStorageProvider {
66
73
  channel
67
74
  } = config.customServer;
68
75
  const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
69
- const channelName = channel.toLowerCase();
76
+ const channelName = normalizeChannel(channel);
70
77
 
71
78
  // Cache-bust: patch files are versioned by name but GitHub CDN may
72
79
  // serve a stale 404 response for newly uploaded files within 5 min.
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeBlobUtil","_interopRequireDefault","e","__esModule","default","NO_CACHE_HEADERS","bustCache","url","Date","now","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":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeBlobUtil","_interopRequireDefault","e","__esModule","default","NO_CACHE_HEADERS","bustCache","url","Date","now","normalizeChannel","channel","lower","toLowerCase","GitHubRawStorageProvider","fetchManifest","config","customServer","bundledPatches","baseUrl","baseFolder","channelName","normalizedBaseUrl","endsWith","slice","registryUrl","res","ReactNativeBlobUtil","fetch","respInfo","status","Error","registry","data","JSON","parse","appGroup","apps","appVersion","flavorGroup","flavors","patches","length","filter","p","platform","Platform","OS","error","console","warn","message","getUpdateFileUrl","filename","getAssetUrl","hash","ext","exports"],"sourceRoot":"../../../../src","sources":["ota/storage/GitHubRawStorage.ts"],"mappings":"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","ignoreList":[]}
@@ -23,6 +23,12 @@ const NO_CACHE_HEADERS = {
23
23
 
24
24
  /** Append a timestamp query param to defeat CDN caches on mutable URLs */
25
25
  const bustCache = url => `${url}?cb=${Date.now()}`;
26
+ const normalizeChannel = channel => {
27
+ const lower = channel.toLowerCase();
28
+ if (lower === 'dev') return 'development';
29
+ if (lower === 'prod') return 'production';
30
+ return lower;
31
+ };
26
32
  export class GitHubRawStorageProvider {
27
33
  async fetchManifest(config) {
28
34
  if (!config.customServer) return config.bundledPatches || [];
@@ -31,6 +37,7 @@ export class GitHubRawStorageProvider {
31
37
  channel,
32
38
  baseFolder = 'ota'
33
39
  } = config.customServer;
40
+ const channelName = normalizeChannel(channel);
34
41
  const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
35
42
  // Cache-bust: registry is mutable; must always fetch the latest version
36
43
  const registryUrl = bustCache(`${normalizedBaseUrl}/${baseFolder}/ota_registry.json`);
@@ -41,7 +48,7 @@ export class GitHubRawStorageProvider {
41
48
  }
42
49
  const registry = typeof res.data === 'string' ? JSON.parse(res.data) : res.data;
43
50
  const appGroup = registry?.apps?.[config.appVersion];
44
- const flavorGroup = appGroup?.flavors?.[channel.toLowerCase()] || appGroup?.flavors?.development;
51
+ const flavorGroup = appGroup?.flavors?.[channelName];
45
52
  if (!flavorGroup?.patches?.length) {
46
53
  return config.bundledPatches || [];
47
54
  }
@@ -61,7 +68,7 @@ export class GitHubRawStorageProvider {
61
68
  channel
62
69
  } = config.customServer;
63
70
  const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;
64
- const channelName = channel.toLowerCase();
71
+ const channelName = normalizeChannel(channel);
65
72
 
66
73
  // Cache-bust: patch files are versioned by name but GitHub CDN may
67
74
  // serve a stale 404 response for newly uploaded files within 5 min.
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","ReactNativeBlobUtil","NO_CACHE_HEADERS","bustCache","url","Date","now","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":[]}
1
+ {"version":3,"names":["Platform","ReactNativeBlobUtil","NO_CACHE_HEADERS","bustCache","url","Date","now","normalizeChannel","channel","lower","toLowerCase","GitHubRawStorageProvider","fetchManifest","config","customServer","bundledPatches","baseUrl","baseFolder","channelName","normalizedBaseUrl","endsWith","slice","registryUrl","res","fetch","respInfo","status","Error","registry","data","JSON","parse","appGroup","apps","appVersion","flavorGroup","flavors","patches","length","filter","p","platform","OS","error","console","warn","message","getUpdateFileUrl","filename","getAssetUrl","hash","ext"],"sourceRoot":"../../../../src","sources":["ota/storage/GitHubRawStorage.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +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;AAuBxE,qBAAa,wBAAyB,YAAW,kBAAkB;IACzD,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAoDrD,gBAAgB,CAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;IAkBZ,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;CAWrB"}
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;AA8BxE,qBAAa,wBAAyB,YAAW,kBAAkB;IACzD,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAmDrD,gBAAgB,CAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;IAkBZ,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GAClB,OAAO,CAAC,MAAM,CAAC;CAWrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-bspatch",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
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",
@@ -23,11 +23,19 @@ const NO_CACHE_HEADERS = { 'Cache-Control': 'no-cache' };
23
23
  const bustCache = (url: string): string =>
24
24
  `${url}?cb=${Date.now()}`;
25
25
 
26
+ const normalizeChannel = (channel: string): string => {
27
+ const lower = channel.toLowerCase();
28
+ if (lower === 'dev') return 'development';
29
+ if (lower === 'prod') return 'production';
30
+ return lower;
31
+ };
32
+
26
33
  export class GitHubRawStorageProvider implements OtaStorageProvider {
27
34
  async fetchManifest(config: OtaConfig): Promise<OtaPatch[]> {
28
35
  if (!config.customServer) return config.bundledPatches || [];
29
36
 
30
37
  const { baseUrl, channel, baseFolder = 'ota' } = config.customServer;
38
+ const channelName = normalizeChannel(channel);
31
39
  const normalizedBaseUrl = baseUrl.endsWith('/')
32
40
  ? baseUrl.slice(0, -1)
33
41
  : baseUrl;
@@ -54,9 +62,7 @@ export class GitHubRawStorageProvider implements OtaStorageProvider {
54
62
  : res.data;
55
63
 
56
64
  const appGroup = registry?.apps?.[config.appVersion];
57
- const flavorGroup =
58
- appGroup?.flavors?.[channel.toLowerCase()] ||
59
- appGroup?.flavors?.development;
65
+ const flavorGroup = appGroup?.flavors?.[channelName];
60
66
 
61
67
  if (!flavorGroup?.patches?.length) {
62
68
  return config.bundledPatches || [];
@@ -88,7 +94,7 @@ export class GitHubRawStorageProvider implements OtaStorageProvider {
88
94
  const normalizedBaseUrl = baseUrl.endsWith('/')
89
95
  ? baseUrl.slice(0, -1)
90
96
  : baseUrl;
91
- const channelName = channel.toLowerCase();
97
+ const channelName = normalizeChannel(channel);
92
98
 
93
99
  // Cache-bust: patch files are versioned by name but GitHub CDN may
94
100
  // serve a stale 404 response for newly uploaded files within 5 min.