@capgo/capacitor-updater 4.0.0-alpha.9 → 4.0.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/LICENCE +160 -656
- package/README.md +141 -21
- package/android/src/main/java/ee/forgr/capacitor_updater/BundleInfo.java +21 -9
- package/android/src/main/java/ee/forgr/capacitor_updater/CapacitorUpdater.java +90 -51
- package/android/src/main/java/ee/forgr/capacitor_updater/CapacitorUpdaterPlugin.java +199 -118
- package/dist/docs.json +390 -19
- package/dist/esm/definitions.d.ts +72 -14
- package/dist/esm/web.d.ts +4 -2
- package/dist/esm/web.js +6 -2
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +6 -2
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +6 -2
- package/dist/plugin.js.map +1 -1
- package/ios/Plugin/BundleInfo.swift +22 -11
- package/ios/Plugin/CapacitorUpdater.swift +125 -77
- package/ios/Plugin/CapacitorUpdaterPlugin.m +2 -1
- package/ios/Plugin/CapacitorUpdaterPlugin.swift +140 -122
- package/package.json +3 -3
|
@@ -42,35 +42,51 @@ declare module '@capacitor/cli' {
|
|
|
42
42
|
*/
|
|
43
43
|
autoUpdate?: boolean;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* Automatically delete previous downloaded bundles when a newer native app version is installed to the device.
|
|
46
46
|
*
|
|
47
47
|
* Only available for Android and iOS.
|
|
48
48
|
*
|
|
49
|
-
* @default
|
|
50
|
-
* @example
|
|
49
|
+
* @default true
|
|
50
|
+
* @example false
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
resetWhenUpdate?: boolean;
|
|
53
53
|
/**
|
|
54
|
-
*
|
|
54
|
+
* Configure the URL / endpoint to which update checks are sent.
|
|
55
55
|
*
|
|
56
56
|
* Only available for Android and iOS.
|
|
57
57
|
*
|
|
58
|
-
* @default
|
|
59
|
-
* @example
|
|
58
|
+
* @default https://api.capgo.app/auto_update
|
|
59
|
+
* @example https://example.com/api/auto_update
|
|
60
60
|
*/
|
|
61
|
-
|
|
61
|
+
updateUrl?: string;
|
|
62
62
|
/**
|
|
63
63
|
* Configure the URL / endpoint to which update statistics are sent.
|
|
64
64
|
*
|
|
65
|
-
* Only available for Android and iOS.
|
|
65
|
+
* Only available for Android and iOS. Set to "" to disable stats reporting.
|
|
66
66
|
*
|
|
67
|
-
* @default https://capgo.app/
|
|
67
|
+
* @default https://api.capgo.app/stats
|
|
68
68
|
* @example https://example.com/api/stats
|
|
69
69
|
*/
|
|
70
70
|
statsUrl?: string;
|
|
71
71
|
};
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
+
export interface noNeedEvent {
|
|
75
|
+
/**
|
|
76
|
+
* Current status of download, between 0 and 100.
|
|
77
|
+
*
|
|
78
|
+
* @since 4.0.0
|
|
79
|
+
*/
|
|
80
|
+
bundle: BundleInfo;
|
|
81
|
+
}
|
|
82
|
+
export interface updateAvailableEvent {
|
|
83
|
+
/**
|
|
84
|
+
* Current status of download, between 0 and 100.
|
|
85
|
+
*
|
|
86
|
+
* @since 4.0.0
|
|
87
|
+
*/
|
|
88
|
+
bundle: BundleInfo;
|
|
89
|
+
}
|
|
74
90
|
export interface DownloadEvent {
|
|
75
91
|
/**
|
|
76
92
|
* Current status of download, between 0 and 100.
|
|
@@ -88,6 +104,14 @@ export interface MajorAvailableEvent {
|
|
|
88
104
|
*/
|
|
89
105
|
version: string;
|
|
90
106
|
}
|
|
107
|
+
export interface DownloadFailedEvent {
|
|
108
|
+
/**
|
|
109
|
+
* Emit when a download fail.
|
|
110
|
+
*
|
|
111
|
+
* @since 4.0.0
|
|
112
|
+
*/
|
|
113
|
+
version: string;
|
|
114
|
+
}
|
|
91
115
|
export interface DownloadCompleteEvent {
|
|
92
116
|
/**
|
|
93
117
|
* Emit when a new update is available.
|
|
@@ -120,10 +144,15 @@ export interface BundleInfo {
|
|
|
120
144
|
id: string;
|
|
121
145
|
version: string;
|
|
122
146
|
downloaded: string;
|
|
147
|
+
checksum: string;
|
|
123
148
|
status: BundleStatus;
|
|
124
149
|
}
|
|
125
150
|
export declare type BundleStatus = 'success' | 'error' | 'pending' | 'downloading';
|
|
151
|
+
export declare type DelayUntilNext = 'background' | 'kill' | 'nativeVersion' | 'date';
|
|
126
152
|
export declare type DownloadChangeListener = (state: DownloadEvent) => void;
|
|
153
|
+
export declare type NoNeedListener = (state: noNeedEvent) => void;
|
|
154
|
+
export declare type UpdateAvailabledListener = (state: updateAvailableEvent) => void;
|
|
155
|
+
export declare type DownloadFailedListener = (state: DownloadFailedEvent) => void;
|
|
127
156
|
export declare type DownloadCompleteListener = (state: DownloadCompleteEvent) => void;
|
|
128
157
|
export declare type MajorAvailableListener = (state: MajorAvailableEvent) => void;
|
|
129
158
|
export declare type UpdateFailedListener = (state: UpdateFailedEvent) => void;
|
|
@@ -140,12 +169,12 @@ export interface CapacitorUpdaterPlugin {
|
|
|
140
169
|
*
|
|
141
170
|
* @returns {Promise<BundleInfo>} The {@link BundleInfo} for the specified version.
|
|
142
171
|
* @param url The URL of the bundle zip file (e.g: dist.zip) to be downloaded. (This can be any URL. E.g: Amazon S3, a github tag, any other place you've hosted your bundle.)
|
|
143
|
-
* @param version
|
|
172
|
+
* @param version set the version code/name of this bundle/version
|
|
144
173
|
* @example https://example.com/versions/{version}/dist.zip
|
|
145
174
|
*/
|
|
146
175
|
download(options: {
|
|
147
176
|
url: string;
|
|
148
|
-
version
|
|
177
|
+
version: string;
|
|
149
178
|
}): Promise<BundleInfo>;
|
|
150
179
|
/**
|
|
151
180
|
* Set the next bundle to be used when the app is reloaded.
|
|
@@ -217,12 +246,23 @@ export interface CapacitorUpdaterPlugin {
|
|
|
217
246
|
* Set delay to skip updates in the next time the app goes into the background
|
|
218
247
|
*
|
|
219
248
|
* @returns {Promise<void>} an Promise resolved directly
|
|
249
|
+
* @param kind is the kind of delay to set
|
|
250
|
+
* @param value is the delay value acording to the type
|
|
220
251
|
* @throws An error if the something went wrong
|
|
221
252
|
* @since 4.0.0
|
|
222
253
|
*/
|
|
223
254
|
setDelay(options: {
|
|
224
|
-
|
|
255
|
+
kind: DelayUntilNext;
|
|
256
|
+
value?: string;
|
|
225
257
|
}): Promise<void>;
|
|
258
|
+
/**
|
|
259
|
+
* Cancel delay to updates as usual
|
|
260
|
+
*
|
|
261
|
+
* @returns {Promise<void>} an Promise resolved directly
|
|
262
|
+
* @throws An error if the something went wrong
|
|
263
|
+
* @since 4.0.0
|
|
264
|
+
*/
|
|
265
|
+
cancelDelay(): Promise<void>;
|
|
226
266
|
/**
|
|
227
267
|
* Get Latest version available from update Url
|
|
228
268
|
*
|
|
@@ -239,6 +279,18 @@ export interface CapacitorUpdaterPlugin {
|
|
|
239
279
|
* @since 2.0.11
|
|
240
280
|
*/
|
|
241
281
|
addListener(eventName: 'download', listenerFunc: DownloadChangeListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
282
|
+
/**
|
|
283
|
+
* Listen for no need to update event, usefull when you want force check every time the app is launched
|
|
284
|
+
*
|
|
285
|
+
* @since 4.0.0
|
|
286
|
+
*/
|
|
287
|
+
addListener(eventName: 'noNeedUpdate', listenerFunc: NoNeedListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
288
|
+
/**
|
|
289
|
+
* Listen for availbale update event, usefull when you want to force check every time the app is launched
|
|
290
|
+
*
|
|
291
|
+
* @since 4.0.0
|
|
292
|
+
*/
|
|
293
|
+
addListener(eventName: 'updateAvailable', listenerFunc: UpdateAvailabledListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
242
294
|
/**
|
|
243
295
|
* Listen for download event in the App, let you know when the download is started, loading and finished
|
|
244
296
|
*
|
|
@@ -252,11 +304,17 @@ export interface CapacitorUpdaterPlugin {
|
|
|
252
304
|
*/
|
|
253
305
|
addListener(eventName: 'majorAvailable', listenerFunc: MajorAvailableListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
254
306
|
/**
|
|
255
|
-
* Listen for update event in the App, let you know when update
|
|
307
|
+
* Listen for update fail event in the App, let you know when update has fail to install at next app start
|
|
256
308
|
*
|
|
257
309
|
* @since 2.3.0
|
|
258
310
|
*/
|
|
259
311
|
addListener(eventName: 'updateFailed', listenerFunc: UpdateFailedListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
312
|
+
/**
|
|
313
|
+
* Listen for download fail event in the App, let you know when download has fail finished
|
|
314
|
+
*
|
|
315
|
+
* @since 4.0.0
|
|
316
|
+
*/
|
|
317
|
+
addListener(eventName: 'downloadFailed', listenerFunc: DownloadFailedListener): Promise<PluginListenerHandle> & PluginListenerHandle;
|
|
260
318
|
/**
|
|
261
319
|
* Get unique ID used to identify device (sent to auto update server)
|
|
262
320
|
*
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WebPlugin } from '@capacitor/core';
|
|
2
|
-
import type { CapacitorUpdaterPlugin, BundleInfo, latestVersion } from './definitions';
|
|
2
|
+
import type { CapacitorUpdaterPlugin, BundleInfo, latestVersion, DelayUntilNext } from './definitions';
|
|
3
3
|
export declare class CapacitorUpdaterWeb extends WebPlugin implements CapacitorUpdaterPlugin {
|
|
4
4
|
download(options: {
|
|
5
5
|
url: string;
|
|
@@ -37,6 +37,8 @@ export declare class CapacitorUpdaterWeb extends WebPlugin implements CapacitorU
|
|
|
37
37
|
getLatest(): Promise<latestVersion>;
|
|
38
38
|
notifyAppReady(): Promise<BundleInfo>;
|
|
39
39
|
setDelay(options: {
|
|
40
|
-
|
|
40
|
+
kind: DelayUntilNext;
|
|
41
|
+
value: string;
|
|
41
42
|
}): Promise<void>;
|
|
43
|
+
cancelDelay(): Promise<void>;
|
|
42
44
|
}
|
package/dist/esm/web.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WebPlugin } from '@capacitor/core';
|
|
2
|
-
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin' };
|
|
2
|
+
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin', checksum: "" };
|
|
3
3
|
export class CapacitorUpdaterWeb extends WebPlugin {
|
|
4
4
|
async download(options) {
|
|
5
5
|
console.warn('Cannot download version in web', options);
|
|
@@ -55,7 +55,11 @@ export class CapacitorUpdaterWeb extends WebPlugin {
|
|
|
55
55
|
return BUNDLE_BUILTIN;
|
|
56
56
|
}
|
|
57
57
|
async setDelay(options) {
|
|
58
|
-
console.warn('Cannot setDelay
|
|
58
|
+
console.warn('Cannot setDelay in web', options);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
async cancelDelay() {
|
|
62
|
+
console.warn('Cannot cancelDelay in web');
|
|
59
63
|
return;
|
|
60
64
|
}
|
|
61
65
|
}
|
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,cAAc,GAAe,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,0BAA0B,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,cAAc,GAAe,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,0BAA0B,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAE3I,MAAM,OAAO,mBACX,SAAQ,SAAS;IAEjB,KAAK,CAAC,QAAQ,CAAC,OAA0C;QACvD,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;QACxD,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,OAAuB;QAChC,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;QACxD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QACtD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,OAAuB;QAC/B,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IACD,KAAK,CAAC,KAAK;QACT,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACrC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,gBAAgB;QACpB,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,CAAC;IAC/B,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,OAAuB;QAClC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,IAAI;QACR,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,OAAwC;QAClD,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,OAAO;QACX,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACjD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACrD,CAAC;IACD,KAAK,CAAC,MAAM;QACV,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACpD,OAAO;IACT,CAAC;IACD,KAAK,CAAC,SAAS;QACb,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACvD,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,wCAAwC;SAClD,CAAA;IACH,CAAC;IACD,KAAK,CAAC,cAAc;QAClB,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC/C,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,OAAgD;QAC7D,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IACD,KAAK,CAAC,WAAW;QACf,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;CACF"}
|
package/dist/plugin.cjs.js
CHANGED
|
@@ -8,7 +8,7 @@ const CapacitorUpdater = core.registerPlugin('CapacitorUpdater', {
|
|
|
8
8
|
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.CapacitorUpdaterWeb()),
|
|
9
9
|
});
|
|
10
10
|
|
|
11
|
-
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin' };
|
|
11
|
+
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin', checksum: "" };
|
|
12
12
|
class CapacitorUpdaterWeb extends core.WebPlugin {
|
|
13
13
|
async download(options) {
|
|
14
14
|
console.warn('Cannot download version in web', options);
|
|
@@ -64,7 +64,11 @@ class CapacitorUpdaterWeb extends core.WebPlugin {
|
|
|
64
64
|
return BUNDLE_BUILTIN;
|
|
65
65
|
}
|
|
66
66
|
async setDelay(options) {
|
|
67
|
-
console.warn('Cannot setDelay
|
|
67
|
+
console.warn('Cannot setDelay in web', options);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
async cancelDelay() {
|
|
71
|
+
console.warn('Cannot cancelDelay in web');
|
|
68
72
|
return;
|
|
69
73
|
}
|
|
70
74
|
}
|
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst CapacitorUpdater = registerPlugin('CapacitorUpdater', {\n web: () => import('./web').then(m => new m.CapacitorUpdaterWeb()),\n});\nexport * from './definitions';\nexport { CapacitorUpdater };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nconst BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin' };\nexport class CapacitorUpdaterWeb extends WebPlugin {\n async download(options) {\n console.warn('Cannot download version in web', options);\n return BUNDLE_BUILTIN;\n }\n async next(options) {\n console.warn('Cannot set next version in web', options);\n return BUNDLE_BUILTIN;\n }\n async isAutoUpdateEnabled() {\n console.warn('Cannot get isAutoUpdateEnabled in web');\n return { enabled: false };\n }\n async set(options) {\n console.warn('Cannot set active bundle in web', options);\n return;\n }\n async getId() {\n console.warn('Cannot get ID in web');\n return { id: 'default' };\n }\n async getPluginVersion() {\n console.warn('Cannot get plugin version in web');\n return { version: 'default' };\n }\n async delete(options) {\n console.warn('Cannot delete bundle in web', options);\n }\n async list() {\n console.warn('Cannot list bundles in web');\n return { bundles: [] };\n }\n async reset(options) {\n console.warn('Cannot reset version in web', options);\n }\n async current() {\n console.warn('Cannot get current bundle in web');\n return { bundle: BUNDLE_BUILTIN, native: '0.0.0' };\n }\n async reload() {\n console.warn('Cannot reload current bundle in web');\n return;\n }\n async getLatest() {\n console.warn('Cannot getLatest current bundle in web');\n return {\n version: \"0.0.0\",\n message: \"Cannot getLatest current bundle in web\",\n };\n }\n async notifyAppReady() {\n console.warn('Cannot notify App Ready in web');\n return BUNDLE_BUILTIN;\n }\n async setDelay(options) {\n console.warn('Cannot setDelay
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst CapacitorUpdater = registerPlugin('CapacitorUpdater', {\n web: () => import('./web').then(m => new m.CapacitorUpdaterWeb()),\n});\nexport * from './definitions';\nexport { CapacitorUpdater };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nconst BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin', checksum: \"\" };\nexport class CapacitorUpdaterWeb extends WebPlugin {\n async download(options) {\n console.warn('Cannot download version in web', options);\n return BUNDLE_BUILTIN;\n }\n async next(options) {\n console.warn('Cannot set next version in web', options);\n return BUNDLE_BUILTIN;\n }\n async isAutoUpdateEnabled() {\n console.warn('Cannot get isAutoUpdateEnabled in web');\n return { enabled: false };\n }\n async set(options) {\n console.warn('Cannot set active bundle in web', options);\n return;\n }\n async getId() {\n console.warn('Cannot get ID in web');\n return { id: 'default' };\n }\n async getPluginVersion() {\n console.warn('Cannot get plugin version in web');\n return { version: 'default' };\n }\n async delete(options) {\n console.warn('Cannot delete bundle in web', options);\n }\n async list() {\n console.warn('Cannot list bundles in web');\n return { bundles: [] };\n }\n async reset(options) {\n console.warn('Cannot reset version in web', options);\n }\n async current() {\n console.warn('Cannot get current bundle in web');\n return { bundle: BUNDLE_BUILTIN, native: '0.0.0' };\n }\n async reload() {\n console.warn('Cannot reload current bundle in web');\n return;\n }\n async getLatest() {\n console.warn('Cannot getLatest current bundle in web');\n return {\n version: \"0.0.0\",\n message: \"Cannot getLatest current bundle in web\",\n };\n }\n async notifyAppReady() {\n console.warn('Cannot notify App Ready in web');\n return BUNDLE_BUILTIN;\n }\n async setDelay(options) {\n console.warn('Cannot setDelay in web', options);\n return;\n }\n async cancelDelay() {\n console.warn('Cannot cancelDelay in web');\n return;\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
|
package/dist/plugin.js
CHANGED
|
@@ -5,7 +5,7 @@ var capacitorCapacitorUpdater = (function (exports, core) {
|
|
|
5
5
|
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.CapacitorUpdaterWeb()),
|
|
6
6
|
});
|
|
7
7
|
|
|
8
|
-
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin' };
|
|
8
|
+
const BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin', checksum: "" };
|
|
9
9
|
class CapacitorUpdaterWeb extends core.WebPlugin {
|
|
10
10
|
async download(options) {
|
|
11
11
|
console.warn('Cannot download version in web', options);
|
|
@@ -61,7 +61,11 @@ var capacitorCapacitorUpdater = (function (exports, core) {
|
|
|
61
61
|
return BUNDLE_BUILTIN;
|
|
62
62
|
}
|
|
63
63
|
async setDelay(options) {
|
|
64
|
-
console.warn('Cannot setDelay
|
|
64
|
+
console.warn('Cannot setDelay in web', options);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
async cancelDelay() {
|
|
68
|
+
console.warn('Cannot cancelDelay in web');
|
|
65
69
|
return;
|
|
66
70
|
}
|
|
67
71
|
}
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst CapacitorUpdater = registerPlugin('CapacitorUpdater', {\n web: () => import('./web').then(m => new m.CapacitorUpdaterWeb()),\n});\nexport * from './definitions';\nexport { CapacitorUpdater };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nconst BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin' };\nexport class CapacitorUpdaterWeb extends WebPlugin {\n async download(options) {\n console.warn('Cannot download version in web', options);\n return BUNDLE_BUILTIN;\n }\n async next(options) {\n console.warn('Cannot set next version in web', options);\n return BUNDLE_BUILTIN;\n }\n async isAutoUpdateEnabled() {\n console.warn('Cannot get isAutoUpdateEnabled in web');\n return { enabled: false };\n }\n async set(options) {\n console.warn('Cannot set active bundle in web', options);\n return;\n }\n async getId() {\n console.warn('Cannot get ID in web');\n return { id: 'default' };\n }\n async getPluginVersion() {\n console.warn('Cannot get plugin version in web');\n return { version: 'default' };\n }\n async delete(options) {\n console.warn('Cannot delete bundle in web', options);\n }\n async list() {\n console.warn('Cannot list bundles in web');\n return { bundles: [] };\n }\n async reset(options) {\n console.warn('Cannot reset version in web', options);\n }\n async current() {\n console.warn('Cannot get current bundle in web');\n return { bundle: BUNDLE_BUILTIN, native: '0.0.0' };\n }\n async reload() {\n console.warn('Cannot reload current bundle in web');\n return;\n }\n async getLatest() {\n console.warn('Cannot getLatest current bundle in web');\n return {\n version: \"0.0.0\",\n message: \"Cannot getLatest current bundle in web\",\n };\n }\n async notifyAppReady() {\n console.warn('Cannot notify App Ready in web');\n return BUNDLE_BUILTIN;\n }\n async setDelay(options) {\n console.warn('Cannot setDelay
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst CapacitorUpdater = registerPlugin('CapacitorUpdater', {\n web: () => import('./web').then(m => new m.CapacitorUpdaterWeb()),\n});\nexport * from './definitions';\nexport { CapacitorUpdater };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nconst BUNDLE_BUILTIN = { status: 'success', version: '', downloaded: '1970-01-01T00:00:00.000Z', id: 'builtin', checksum: \"\" };\nexport class CapacitorUpdaterWeb extends WebPlugin {\n async download(options) {\n console.warn('Cannot download version in web', options);\n return BUNDLE_BUILTIN;\n }\n async next(options) {\n console.warn('Cannot set next version in web', options);\n return BUNDLE_BUILTIN;\n }\n async isAutoUpdateEnabled() {\n console.warn('Cannot get isAutoUpdateEnabled in web');\n return { enabled: false };\n }\n async set(options) {\n console.warn('Cannot set active bundle in web', options);\n return;\n }\n async getId() {\n console.warn('Cannot get ID in web');\n return { id: 'default' };\n }\n async getPluginVersion() {\n console.warn('Cannot get plugin version in web');\n return { version: 'default' };\n }\n async delete(options) {\n console.warn('Cannot delete bundle in web', options);\n }\n async list() {\n console.warn('Cannot list bundles in web');\n return { bundles: [] };\n }\n async reset(options) {\n console.warn('Cannot reset version in web', options);\n }\n async current() {\n console.warn('Cannot get current bundle in web');\n return { bundle: BUNDLE_BUILTIN, native: '0.0.0' };\n }\n async reload() {\n console.warn('Cannot reload current bundle in web');\n return;\n }\n async getLatest() {\n console.warn('Cannot getLatest current bundle in web');\n return {\n version: \"0.0.0\",\n message: \"Cannot getLatest current bundle in web\",\n };\n }\n async notifyAppReady() {\n console.warn('Cannot notify App Ready in web');\n return BUNDLE_BUILTIN;\n }\n async setDelay(options) {\n console.warn('Cannot setDelay in web', options);\n return;\n }\n async cancelDelay() {\n console.warn('Cannot cancelDelay in web');\n return;\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":";;;AACK,UAAC,gBAAgB,GAAGA,mBAAc,CAAC,kBAAkB,EAAE;IAC5D,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,mBAAmB,EAAE,CAAC;IACrE,CAAC;;ICFD,MAAM,cAAc,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,0BAA0B,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACxH,MAAM,mBAAmB,SAASC,cAAS,CAAC;IACnD,IAAI,MAAM,QAAQ,CAAC,OAAO,EAAE;IAC5B,QAAQ,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAChE,QAAQ,OAAO,cAAc,CAAC;IAC9B,KAAK;IACL,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE;IACxB,QAAQ,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAChE,QAAQ,OAAO,cAAc,CAAC;IAC9B,KAAK;IACL,IAAI,MAAM,mBAAmB,GAAG;IAChC,QAAQ,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IAC9D,QAAQ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAClC,KAAK;IACL,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE;IACvB,QAAQ,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;IACjE,QAAQ,OAAO;IACf,KAAK;IACL,IAAI,MAAM,KAAK,GAAG;IAClB,QAAQ,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC7C,QAAQ,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;IACjC,KAAK;IACL,IAAI,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACzD,QAAQ,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACtC,KAAK;IACL,IAAI,MAAM,MAAM,CAAC,OAAO,EAAE;IAC1B,QAAQ,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IAC7D,KAAK;IACL,IAAI,MAAM,IAAI,GAAG;IACjB,QAAQ,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACnD,QAAQ,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC/B,KAAK;IACL,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE;IACzB,QAAQ,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IAC7D,KAAK;IACL,IAAI,MAAM,OAAO,GAAG;IACpB,QAAQ,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACzD,QAAQ,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC3D,KAAK;IACL,IAAI,MAAM,MAAM,GAAG;IACnB,QAAQ,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IAC5D,QAAQ,OAAO;IACf,KAAK;IACL,IAAI,MAAM,SAAS,GAAG;IACtB,QAAQ,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC/D,QAAQ,OAAO;IACf,YAAY,OAAO,EAAE,OAAO;IAC5B,YAAY,OAAO,EAAE,wCAAwC;IAC7D,SAAS,CAAC;IACV,KAAK;IACL,IAAI,MAAM,cAAc,GAAG;IAC3B,QAAQ,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACvD,QAAQ,OAAO,cAAc,CAAC;IAC9B,KAAK;IACL,IAAI,MAAM,QAAQ,CAAC,OAAO,EAAE;IAC5B,QAAQ,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;IACxD,QAAQ,OAAO;IACf,KAAK;IACL,IAAI,MAAM,WAAW,GAAG;IACxB,QAAQ,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAClD,QAAQ,OAAO;IACf,KAAK;IACL;;;;;;;;;;;;;;;;;"}
|
|
@@ -4,27 +4,29 @@ import Foundation
|
|
|
4
4
|
|
|
5
5
|
@objc public class BundleInfo: NSObject, Decodable, Encodable {
|
|
6
6
|
public static let ID_BUILTIN: String = "builtin"
|
|
7
|
-
public static let
|
|
7
|
+
public static let VERSION_UNKNOWN: String = "unknown"
|
|
8
8
|
public static let DOWNLOADED_BUILTIN: String = "1970-01-01T00:00:00.000Z"
|
|
9
9
|
|
|
10
10
|
private let downloaded: String
|
|
11
11
|
private let id: String
|
|
12
12
|
private let version: String
|
|
13
|
+
private let checksum: String
|
|
13
14
|
private let status: BundleStatus
|
|
14
15
|
|
|
15
|
-
convenience init(id: String, version: String, status: BundleStatus, downloaded: Date) {
|
|
16
|
-
self.init(id: id, version: version, status: status, downloaded: downloaded.iso8601withFractionalSeconds)
|
|
16
|
+
convenience init(id: String, version: String, status: BundleStatus, downloaded: Date, checksum: String) {
|
|
17
|
+
self.init(id: id, version: version, status: status, downloaded: downloaded.iso8601withFractionalSeconds, checksum: checksum)
|
|
17
18
|
}
|
|
18
19
|
|
|
19
|
-
init(id: String, version: String, status: BundleStatus, downloaded: String = BundleInfo.DOWNLOADED_BUILTIN) {
|
|
20
|
+
init(id: String, version: String, status: BundleStatus, downloaded: String = BundleInfo.DOWNLOADED_BUILTIN, checksum: String) {
|
|
20
21
|
self.downloaded = downloaded.trim()
|
|
21
22
|
self.id = id
|
|
22
23
|
self.version = version
|
|
24
|
+
self.checksum = checksum
|
|
23
25
|
self.status = status
|
|
24
26
|
}
|
|
25
27
|
|
|
26
28
|
enum CodingKeys: String, CodingKey {
|
|
27
|
-
case downloaded, id, version, status
|
|
29
|
+
case downloaded, id, version, status, checksum
|
|
28
30
|
}
|
|
29
31
|
|
|
30
32
|
public func isBuiltin() -> Bool {
|
|
@@ -32,7 +34,7 @@ import Foundation
|
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
public func isUnknown() -> Bool {
|
|
35
|
-
return BundleInfo.
|
|
37
|
+
return BundleInfo.VERSION_UNKNOWN == self.id
|
|
36
38
|
}
|
|
37
39
|
|
|
38
40
|
public func isErrorStatus() -> Bool {
|
|
@@ -46,9 +48,17 @@ import Foundation
|
|
|
46
48
|
public func getDownloaded() -> String {
|
|
47
49
|
return self.isBuiltin() ? BundleInfo.DOWNLOADED_BUILTIN : self.downloaded
|
|
48
50
|
}
|
|
51
|
+
|
|
52
|
+
public func getChecksum() -> String {
|
|
53
|
+
return self.isBuiltin() ? "" : self.checksum
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public func setChecksum(checksum: String) -> BundleInfo {
|
|
57
|
+
return BundleInfo(id: self.id, version: self.version, status: self.status, downloaded: self.downloaded, checksum: checksum)
|
|
58
|
+
}
|
|
49
59
|
|
|
50
60
|
public func setDownloaded(downloaded: Date) -> BundleInfo {
|
|
51
|
-
return BundleInfo(id: self.id, version: self.version, status: self.status, downloaded: downloaded)
|
|
61
|
+
return BundleInfo(id: self.id, version: self.version, status: self.status, downloaded: downloaded, checksum: self.checksum)
|
|
52
62
|
}
|
|
53
63
|
|
|
54
64
|
public func getId() -> String {
|
|
@@ -56,7 +66,7 @@ import Foundation
|
|
|
56
66
|
}
|
|
57
67
|
|
|
58
68
|
public func setId(id: String) -> BundleInfo {
|
|
59
|
-
return BundleInfo(id: id, version: self.version, status: self.status, downloaded: self.downloaded)
|
|
69
|
+
return BundleInfo(id: id, version: self.version, status: self.status, downloaded: self.downloaded, checksum: self.checksum)
|
|
60
70
|
}
|
|
61
71
|
|
|
62
72
|
public func getVersionName() -> String {
|
|
@@ -64,7 +74,7 @@ import Foundation
|
|
|
64
74
|
}
|
|
65
75
|
|
|
66
76
|
public func setVersionName(version: String) -> BundleInfo {
|
|
67
|
-
return BundleInfo(id: self.id, version: version, status: self.status, downloaded: self.downloaded)
|
|
77
|
+
return BundleInfo(id: self.id, version: version, status: self.status, downloaded: self.downloaded, checksum: self.checksum)
|
|
68
78
|
}
|
|
69
79
|
|
|
70
80
|
public func getStatus() -> String {
|
|
@@ -72,7 +82,7 @@ import Foundation
|
|
|
72
82
|
}
|
|
73
83
|
|
|
74
84
|
public func setStatus(status: String) -> BundleInfo {
|
|
75
|
-
return BundleInfo(id: self.id, version: self.version, status: BundleStatus(localizedString: status)!, downloaded: self.downloaded)
|
|
85
|
+
return BundleInfo(id: self.id, version: self.version, status: BundleStatus(localizedString: status)!, downloaded: self.downloaded, checksum: self.checksum)
|
|
76
86
|
}
|
|
77
87
|
|
|
78
88
|
public func toJSON() -> [String: String] {
|
|
@@ -80,6 +90,7 @@ import Foundation
|
|
|
80
90
|
"id": self.getId(),
|
|
81
91
|
"version": self.getVersionName(),
|
|
82
92
|
"downloaded": self.getDownloaded(),
|
|
93
|
+
"checksum": self.getChecksum(),
|
|
83
94
|
"status": self.getStatus(),
|
|
84
95
|
]
|
|
85
96
|
}
|
|
@@ -89,6 +100,6 @@ import Foundation
|
|
|
89
100
|
}
|
|
90
101
|
|
|
91
102
|
public func toString() -> String {
|
|
92
|
-
return "{ \"
|
|
103
|
+
return "{ \"id\": \"\(self.getId())\", \"version\": \"\(self.getVersionName())\", \"downloaded\": \"\(self.getDownloaded())\", \"checksum\": \"\(self.getChecksum())\", \"status\": \"\(self.getStatus())\"}"
|
|
93
104
|
}
|
|
94
105
|
}
|