com-easystep2-datawedge-plugin-intent-capacitor 4.4.3 → 5.2.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/android/build.gradle +1 -1
- package/android/src/main/AndroidManifest.xml +4 -11
- package/android/src/main/java/com/easystep2/datawedge/plugin/intent/IntentShimPlugin.java +37 -19
- package/com-easystep2-datawedge-plugin-intent-capacitor-5.2.0.tgz +0 -0
- package/esm/index.js +4 -2
- package/esm/index.js.map +1 -1
- package/esm/web.js +7 -7
- package/esm/web.js.map +1 -1
- package/package.json +1 -1
- package/plugin.cjs.js +95 -2
- package/plugin.cjs.js.map +1 -1
- package/plugin.js +120 -27
- package/plugin.js.map +1 -1
- package/com-easystep2-datawedge-plugin-intent-capacitor-4.4.3.tgz +0 -0
package/android/build.gradle
CHANGED
|
@@ -48,7 +48,7 @@ repositories {
|
|
|
48
48
|
|
|
49
49
|
dependencies {
|
|
50
50
|
implementation project(':capacitor-android')
|
|
51
|
-
|
|
51
|
+
implementation 'androidx.appcompat:appcompat:1.6.1'
|
|
52
52
|
testImplementation "junit:junit:$junitVersion"
|
|
53
53
|
androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
|
|
54
54
|
androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<manifest
|
|
2
|
+
<manifest
|
|
3
|
+
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
3
4
|
package="com.easystep2.datawedge.plugin.intent">
|
|
4
5
|
|
|
5
|
-
<application
|
|
6
|
-
|
|
7
|
-
<intent-filter>
|
|
8
|
-
<action android:name="${applicationId}.ACTION" />
|
|
9
|
-
<category android:name="android.intent.category.DEFAULT" />
|
|
10
|
-
</intent-filter>
|
|
11
|
-
</activity>
|
|
12
|
-
</application>
|
|
13
|
-
|
|
14
|
-
</manifest>
|
|
6
|
+
<application />
|
|
7
|
+
</manifest>
|
|
@@ -7,6 +7,7 @@ import android.content.Context;
|
|
|
7
7
|
import android.content.Intent;
|
|
8
8
|
import android.content.IntentFilter;
|
|
9
9
|
import android.content.pm.PackageManager;
|
|
10
|
+
import android.net.Uri;
|
|
10
11
|
import android.os.Build;
|
|
11
12
|
import android.os.Bundle;
|
|
12
13
|
import android.text.Html;
|
|
@@ -90,24 +91,26 @@ public class IntentShimPlugin extends Plugin {
|
|
|
90
91
|
}
|
|
91
92
|
}
|
|
92
93
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
intentJson.put("requestCode", result.getRequestCode());
|
|
101
|
-
intentJson.put("resultCode", result.getResultCode());
|
|
102
|
-
call.resolve(intentJson);
|
|
103
|
-
}
|
|
94
|
+
@ActivityCallback
|
|
95
|
+
private void activityResult(PluginCall call, int resultCode, Intent data) {
|
|
96
|
+
JSObject intentJson = getIntentJson(data);
|
|
97
|
+
intentJson.put("requestCode", call.getInt("requestCode", 1));
|
|
98
|
+
intentJson.put("resultCode", resultCode);
|
|
99
|
+
call.resolve(intentJson);
|
|
100
|
+
}
|
|
104
101
|
|
|
105
102
|
@PluginMethod(returnType = PluginMethod.RETURN_CALLBACK)
|
|
106
103
|
public void registerBroadcastReceiver(PluginCall call) {
|
|
107
104
|
call.setKeepAlive(true);
|
|
108
105
|
|
|
109
106
|
JSObject filters = call.getData();
|
|
110
|
-
JSONArray filterActions =
|
|
107
|
+
JSONArray filterActions = new JSONArray();
|
|
108
|
+
if (filters.has("filterActions")) {
|
|
109
|
+
Object obj = filters.opt("filterActions");
|
|
110
|
+
if (obj instanceof JSONArray) {
|
|
111
|
+
filterActions = (JSONArray) obj;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
111
114
|
|
|
112
115
|
if (filterActions == null || filterActions.length() == 0) {
|
|
113
116
|
call.reject("filterActions argument is required.");
|
|
@@ -120,14 +123,26 @@ public class IntentShimPlugin extends Plugin {
|
|
|
120
123
|
filter.addAction(filterActions.getString(i));
|
|
121
124
|
}
|
|
122
125
|
|
|
123
|
-
JSONArray filterCategories =
|
|
126
|
+
JSONArray filterCategories = new JSONArray();
|
|
127
|
+
if (filters.has("filterCategories")) {
|
|
128
|
+
Object obj = filters.opt("filterCategories");
|
|
129
|
+
if (obj instanceof JSONArray) {
|
|
130
|
+
filterCategories = (JSONArray) obj;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
124
133
|
if (filterCategories != null) {
|
|
125
134
|
for (int i = 0; i < filterCategories.length(); i++) {
|
|
126
135
|
filter.addCategory(filterCategories.getString(i));
|
|
127
136
|
}
|
|
128
137
|
}
|
|
129
138
|
|
|
130
|
-
JSONArray filterDataSchemes =
|
|
139
|
+
JSONArray filterDataSchemes = new JSONArray();
|
|
140
|
+
if (filters.has("filterDataSchemes")) {
|
|
141
|
+
Object obj = filters.opt("filterDataSchemes");
|
|
142
|
+
if (obj instanceof JSONArray) {
|
|
143
|
+
filterDataSchemes = (JSONArray) obj;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
131
146
|
if (filterDataSchemes != null) {
|
|
132
147
|
for (int i = 0; i < filterDataSchemes.length(); i++) {
|
|
133
148
|
filter.addDataScheme(filterDataSchemes.getString(i));
|
|
@@ -141,15 +156,18 @@ public class IntentShimPlugin extends Plugin {
|
|
|
141
156
|
BroadcastReceiver receiver = new BroadcastReceiver() {
|
|
142
157
|
@Override
|
|
143
158
|
public void onReceive(Context context, Intent intent) {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
savedCall.resolve(getIntentJson(intent));
|
|
147
|
-
}
|
|
159
|
+
JSObject intentJson = getIntentJson(intent);
|
|
160
|
+
notifyListeners("onIntent", intentJson);
|
|
148
161
|
}
|
|
149
162
|
};
|
|
150
163
|
|
|
151
|
-
|
|
164
|
+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
|
165
|
+
getContext().registerReceiver(receiver, filter, Context.RECEIVER_EXPORTED);
|
|
166
|
+
} else {
|
|
167
|
+
getContext().registerReceiver(receiver, filter);
|
|
168
|
+
}
|
|
152
169
|
receiverCalls.put(receiver, call);
|
|
170
|
+
call.resolve();
|
|
153
171
|
}
|
|
154
172
|
|
|
155
173
|
@PluginMethod
|
|
Binary file
|
package/esm/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { registerPlugin } from '@capacitor/core';
|
|
2
|
-
// Register the plugin
|
|
3
|
-
const IntentShim = registerPlugin('IntentShim'
|
|
2
|
+
// Register the plugin with web fallback
|
|
3
|
+
const IntentShim = registerPlugin('IntentShim', {
|
|
4
|
+
web: () => import('./web').then(m => new m.IntentShimWeb()),
|
|
5
|
+
});
|
|
4
6
|
// Export constants for direct usage in client code, matching the Cordova plugin's API
|
|
5
7
|
export const ACTION_SEND = 'android.intent.action.SEND';
|
|
6
8
|
export const ACTION_VIEW = 'android.intent.action.VIEW';
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capacitor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capacitor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,wCAAwC;AACxC,MAAM,UAAU,GAAG,cAAc,CAAmB,YAAY,EAAE;IAChE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;CAC5D,CAAC,CAAC;AAEH,sFAAsF;AACtF,MAAM,CAAC,MAAM,WAAW,GAAG,4BAA4B,CAAC;AACxD,MAAM,CAAC,MAAM,WAAW,GAAG,4BAA4B,CAAC;AACxD,MAAM,CAAC,MAAM,UAAU,GAAG,2BAA2B,CAAC;AACtD,MAAM,CAAC,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAC5D,MAAM,CAAC,MAAM,YAAY,GAAG,6BAA6B,CAAC;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,4BAA4B,CAAC;AACxD,MAAM,CAAC,MAAM,WAAW,GAAG,4BAA4B,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAC5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,mCAAmC,CAAC;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,4BAA4B,CAAC;AAExD,iDAAiD;AACjD,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,CAAC","sourcesContent":["import { registerPlugin } from '@capacitor/core';\nimport type { IntentShimPlugin } from './definitions';\n\n// Register the plugin with web fallback\nconst IntentShim = registerPlugin<IntentShimPlugin>('IntentShim', {\n web: () => import('./web').then(m => new m.IntentShimWeb()),\n});\n\n// Export constants for direct usage in client code, matching the Cordova plugin's API\nexport const ACTION_SEND = 'android.intent.action.SEND';\nexport const ACTION_VIEW = 'android.intent.action.VIEW';\nexport const EXTRA_TEXT = 'android.intent.extra.TEXT';\nexport const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';\nexport const EXTRA_STREAM = 'android.intent.extra.STREAM';\nexport const EXTRA_EMAIL = 'android.intent.extra.EMAIL';\nexport const ACTION_CALL = 'android.intent.action.CALL';\nexport const ACTION_SENDTO = 'android.intent.action.SENDTO';\nexport const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';\nexport const ACTION_PICK = 'android.intent.action.PICK';\n\n// Export the plugin interface and implementation\nexport * from './definitions';\nexport { IntentShim };\n"]}
|
package/esm/web.js
CHANGED
|
@@ -18,19 +18,19 @@ export class IntentShimWeb extends WebPlugin {
|
|
|
18
18
|
registerBroadcastReceiver(options) {
|
|
19
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
20
|
this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);
|
|
21
|
-
throw this.
|
|
21
|
+
throw this.unimplemented('Not available in web environment');
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
unregisterBroadcastReceiver() {
|
|
25
25
|
return __awaiter(this, void 0, void 0, function* () {
|
|
26
26
|
this.log('IntentShim Web: unregisterBroadcastReceiver');
|
|
27
|
-
throw this.
|
|
27
|
+
throw this.unimplemented('Not available in web environment');
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
30
|
sendBroadcast(options) {
|
|
31
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
32
|
this.log(`IntentShim Web: sendBroadcast ${options.action}`);
|
|
33
|
-
throw this.
|
|
33
|
+
throw this.unimplemented('Not available in web environment');
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
36
|
startActivity(options) {
|
|
@@ -41,25 +41,25 @@ export class IntentShimWeb extends WebPlugin {
|
|
|
41
41
|
window.open(options.url, '_blank');
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
|
-
throw this.
|
|
44
|
+
throw this.unimplemented('Full intent functionality not available in web environment');
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
getIntent() {
|
|
48
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
49
49
|
this.log('IntentShim Web: getIntent');
|
|
50
|
-
throw this.
|
|
50
|
+
throw this.unimplemented('Not available in web environment');
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
startActivityForResult(options) {
|
|
54
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
55
|
this.log(`IntentShim Web: startActivityForResult ${options.action}`);
|
|
56
|
-
throw this.
|
|
56
|
+
throw this.unimplemented('Not available in web environment');
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
59
|
sendResult(options) {
|
|
60
60
|
return __awaiter(this, void 0, void 0, function* () {
|
|
61
61
|
this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);
|
|
62
|
-
throw this.
|
|
62
|
+
throw this.unimplemented('Not available in web environment');
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
65
|
onIntent(callback) {
|
package/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/capacitor/web.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,OAAO,aAAc,SAAQ,SAAS;IAIxC;QACI,KAAK,EAAE,CAAC;QAJJ,oBAAe,GAAuC,EAAE,CAAC;QACzD,UAAK,GAAY,KAAK,CAAC;QAI3B,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC5C,CAAC;IAEK,yBAAyB,CAAC,OAAoC;;YAChE,IAAI,CAAC,GAAG,CAAC,0DAA0D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC5G,MAAM,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/capacitor/web.ts"],"names":[],"mappings":"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","sourcesContent":["import { WebPlugin } from '@capacitor/core';\nimport type { IntentShimPlugin, IntentResult } from './definitions';\n\nexport class IntentShimWeb extends WebPlugin implements IntentShimPlugin {\n private intentListeners: ((intent: IntentResult) => void)[] = [];\n private debug: boolean = false;\n\n constructor() {\n super();\n this.log('IntentShim Web: Initialized');\n }\n\n async registerBroadcastReceiver(options: { filterActions: string[] }): Promise<void> {\n this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);\n throw this.unimplemented('Not available in web environment');\n }\n\n async unregisterBroadcastReceiver(): Promise<void> {\n this.log('IntentShim Web: unregisterBroadcastReceiver');\n throw this.unimplemented('Not available in web environment');\n }\n\n async sendBroadcast(options: { action: string; extras?: any }): Promise<void> {\n this.log(`IntentShim Web: sendBroadcast ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n }\n\n async startActivity(options: { action: string; url?: string; type?: string; extras?: any }): Promise<void> {\n this.log(`IntentShim Web: startActivity ${options.action}`);\n // For web, we can at least try to open URLs\n if (options.url && options.action === 'android.intent.action.VIEW') {\n window.open(options.url, '_blank');\n return;\n }\n throw this.unimplemented('Full intent functionality not available in web environment');\n }\n\n async getIntent(): Promise<{ action: string; data: string; type: string; extras: any }> {\n this.log('IntentShim Web: getIntent');\n throw this.unimplemented('Not available in web environment');\n }\n\n async startActivityForResult(options: {\n action: string; url?: string; type?: string; extras?: any; requestCode: number\n }): Promise<void> {\n this.log(`IntentShim Web: startActivityForResult ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n }\n\n async sendResult(options: { extras?: any; resultCode?: number }): Promise<void> {\n this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);\n throw this.unimplemented('Not available in web environment');\n }\n\n onIntent(callback: (intent: IntentResult) => void): void {\n this.log('IntentShim Web: onIntent listener registered');\n this.intentListeners.push(callback);\n }\n\n async packageExists(packageName: string): Promise<{ exists: boolean }> {\n this.log(`IntentShim Web: packageExists ${packageName}`);\n return { exists: false };\n }\n\n async setDebugMode(options: { enabled: boolean }): Promise<void> {\n this.debug = options.enabled;\n this.log(`IntentShim Web: Debug mode ${options.enabled ? 'enabled' : 'disabled'}`);\n }\n\n private log(message: string): void {\n if (this.debug) {\n console.log(message);\n }\n }\n}\n"]}
|
package/package.json
CHANGED
package/plugin.cjs.js
CHANGED
|
@@ -4,8 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var core = require('@capacitor/core');
|
|
6
6
|
|
|
7
|
-
// Register the plugin
|
|
8
|
-
const IntentShim = core.registerPlugin('IntentShim'
|
|
7
|
+
// Register the plugin with web fallback
|
|
8
|
+
const IntentShim = core.registerPlugin('IntentShim', {
|
|
9
|
+
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.IntentShimWeb()),
|
|
10
|
+
});
|
|
9
11
|
// Export constants for direct usage in client code, matching the Cordova plugin's API
|
|
10
12
|
const ACTION_SEND = 'android.intent.action.SEND';
|
|
11
13
|
const ACTION_VIEW = 'android.intent.action.VIEW';
|
|
@@ -18,6 +20,97 @@ const ACTION_SENDTO = 'android.intent.action.SENDTO';
|
|
|
18
20
|
const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';
|
|
19
21
|
const ACTION_PICK = 'android.intent.action.PICK';
|
|
20
22
|
|
|
23
|
+
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
24
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
25
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
26
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
27
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
28
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
29
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
class IntentShimWeb extends core.WebPlugin {
|
|
33
|
+
constructor() {
|
|
34
|
+
super();
|
|
35
|
+
this.intentListeners = [];
|
|
36
|
+
this.debug = false;
|
|
37
|
+
this.log('IntentShim Web: Initialized');
|
|
38
|
+
}
|
|
39
|
+
registerBroadcastReceiver(options) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);
|
|
42
|
+
throw this.unimplemented('Not available in web environment');
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
unregisterBroadcastReceiver() {
|
|
46
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
this.log('IntentShim Web: unregisterBroadcastReceiver');
|
|
48
|
+
throw this.unimplemented('Not available in web environment');
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
sendBroadcast(options) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
this.log(`IntentShim Web: sendBroadcast ${options.action}`);
|
|
54
|
+
throw this.unimplemented('Not available in web environment');
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
startActivity(options) {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
this.log(`IntentShim Web: startActivity ${options.action}`);
|
|
60
|
+
// For web, we can at least try to open URLs
|
|
61
|
+
if (options.url && options.action === 'android.intent.action.VIEW') {
|
|
62
|
+
window.open(options.url, '_blank');
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
throw this.unimplemented('Full intent functionality not available in web environment');
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
getIntent() {
|
|
69
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
this.log('IntentShim Web: getIntent');
|
|
71
|
+
throw this.unimplemented('Not available in web environment');
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
startActivityForResult(options) {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
this.log(`IntentShim Web: startActivityForResult ${options.action}`);
|
|
77
|
+
throw this.unimplemented('Not available in web environment');
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
sendResult(options) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);
|
|
83
|
+
throw this.unimplemented('Not available in web environment');
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
onIntent(callback) {
|
|
87
|
+
this.log('IntentShim Web: onIntent listener registered');
|
|
88
|
+
this.intentListeners.push(callback);
|
|
89
|
+
}
|
|
90
|
+
packageExists(packageName) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
this.log(`IntentShim Web: packageExists ${packageName}`);
|
|
93
|
+
return { exists: false };
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
setDebugMode(options) {
|
|
97
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
this.debug = options.enabled;
|
|
99
|
+
this.log(`IntentShim Web: Debug mode ${options.enabled ? 'enabled' : 'disabled'}`);
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
log(message) {
|
|
103
|
+
if (this.debug) {
|
|
104
|
+
console.log(message);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
var web = /*#__PURE__*/Object.freeze({
|
|
110
|
+
__proto__: null,
|
|
111
|
+
IntentShimWeb: IntentShimWeb
|
|
112
|
+
});
|
|
113
|
+
|
|
21
114
|
exports.ACTION_CALL = ACTION_CALL;
|
|
22
115
|
exports.ACTION_GET_CONTENT = ACTION_GET_CONTENT;
|
|
23
116
|
exports.ACTION_PICK = ACTION_PICK;
|
package/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\n// Register the plugin\nconst IntentShim = registerPlugin('IntentShim');\n// Export constants for direct usage in client code, matching the Cordova plugin's API\nexport const ACTION_SEND = 'android.intent.action.SEND';\nexport const ACTION_VIEW = 'android.intent.action.VIEW';\nexport const EXTRA_TEXT = 'android.intent.extra.TEXT';\nexport const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';\nexport const EXTRA_STREAM = 'android.intent.extra.STREAM';\nexport const EXTRA_EMAIL = 'android.intent.extra.EMAIL';\nexport const ACTION_CALL = 'android.intent.action.CALL';\nexport const ACTION_SENDTO = 'android.intent.action.SENDTO';\nexport const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';\nexport const ACTION_PICK = 'android.intent.action.PICK';\n// Export the plugin interface and implementation\nexport * from './definitions';\nexport { IntentShim };\n//# sourceMappingURL=index.js.map"],"names":["registerPlugin"],"mappings":";;;;;;AACA;AACK,MAAC,UAAU,GAAGA,mBAAc,CAAC,YAAY,EAAE;AAChD;AACY,MAAC,WAAW,GAAG,6BAA6B;AAC5C,MAAC,WAAW,GAAG,6BAA6B;AAC5C,MAAC,UAAU,GAAG,4BAA4B;AAC1C,MAAC,aAAa,GAAG,+BAA+B;AAChD,MAAC,YAAY,GAAG,8BAA8B;AAC9C,MAAC,WAAW,GAAG,6BAA6B;AAC5C,MAAC,WAAW,GAAG,6BAA6B;AAC5C,MAAC,aAAa,GAAG,+BAA+B;AAChD,MAAC,kBAAkB,GAAG,oCAAoC;AAC1D,MAAC,WAAW,GAAG
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\n// Register the plugin with web fallback\nconst IntentShim = registerPlugin('IntentShim', {\n web: () => import('./web').then(m => new m.IntentShimWeb()),\n});\n// Export constants for direct usage in client code, matching the Cordova plugin's API\nexport const ACTION_SEND = 'android.intent.action.SEND';\nexport const ACTION_VIEW = 'android.intent.action.VIEW';\nexport const EXTRA_TEXT = 'android.intent.extra.TEXT';\nexport const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';\nexport const EXTRA_STREAM = 'android.intent.extra.STREAM';\nexport const EXTRA_EMAIL = 'android.intent.extra.EMAIL';\nexport const ACTION_CALL = 'android.intent.action.CALL';\nexport const ACTION_SENDTO = 'android.intent.action.SENDTO';\nexport const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';\nexport const ACTION_PICK = 'android.intent.action.PICK';\n// Export the plugin interface and implementation\nexport * from './definitions';\nexport { IntentShim };\n//# sourceMappingURL=index.js.map","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { WebPlugin } from '@capacitor/core';\nexport class IntentShimWeb extends WebPlugin {\n constructor() {\n super();\n this.intentListeners = [];\n this.debug = false;\n this.log('IntentShim Web: Initialized');\n }\n registerBroadcastReceiver(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n unregisterBroadcastReceiver() {\n return __awaiter(this, void 0, void 0, function* () {\n this.log('IntentShim Web: unregisterBroadcastReceiver');\n throw this.unimplemented('Not available in web environment');\n });\n }\n sendBroadcast(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: sendBroadcast ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n startActivity(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: startActivity ${options.action}`);\n // For web, we can at least try to open URLs\n if (options.url && options.action === 'android.intent.action.VIEW') {\n window.open(options.url, '_blank');\n return;\n }\n throw this.unimplemented('Full intent functionality not available in web environment');\n });\n }\n getIntent() {\n return __awaiter(this, void 0, void 0, function* () {\n this.log('IntentShim Web: getIntent');\n throw this.unimplemented('Not available in web environment');\n });\n }\n startActivityForResult(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: startActivityForResult ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n sendResult(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n onIntent(callback) {\n this.log('IntentShim Web: onIntent listener registered');\n this.intentListeners.push(callback);\n }\n packageExists(packageName) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: packageExists ${packageName}`);\n return { exists: false };\n });\n }\n setDebugMode(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.debug = options.enabled;\n this.log(`IntentShim Web: Debug mode ${options.enabled ? 'enabled' : 'disabled'}`);\n });\n }\n log(message) {\n if (this.debug) {\n console.log(message);\n }\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","this","WebPlugin"],"mappings":"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"}
|
package/plugin.js
CHANGED
|
@@ -1,35 +1,128 @@
|
|
|
1
1
|
var capacitorIntentShim = (function (exports, core) {
|
|
2
|
-
|
|
2
|
+
'use strict';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
4
|
+
// Register the plugin with web fallback
|
|
5
|
+
const IntentShim = core.registerPlugin('IntentShim', {
|
|
6
|
+
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.IntentShimWeb()),
|
|
7
|
+
});
|
|
8
|
+
// Export constants for direct usage in client code, matching the Cordova plugin's API
|
|
9
|
+
const ACTION_SEND = 'android.intent.action.SEND';
|
|
10
|
+
const ACTION_VIEW = 'android.intent.action.VIEW';
|
|
11
|
+
const EXTRA_TEXT = 'android.intent.extra.TEXT';
|
|
12
|
+
const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';
|
|
13
|
+
const EXTRA_STREAM = 'android.intent.extra.STREAM';
|
|
14
|
+
const EXTRA_EMAIL = 'android.intent.extra.EMAIL';
|
|
15
|
+
const ACTION_CALL = 'android.intent.action.CALL';
|
|
16
|
+
const ACTION_SENDTO = 'android.intent.action.SENDTO';
|
|
17
|
+
const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';
|
|
18
|
+
const ACTION_PICK = 'android.intent.action.PICK';
|
|
17
19
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
21
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
22
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
23
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
24
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
25
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
26
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
class IntentShimWeb extends core.WebPlugin {
|
|
30
|
+
constructor() {
|
|
31
|
+
super();
|
|
32
|
+
this.intentListeners = [];
|
|
33
|
+
this.debug = false;
|
|
34
|
+
this.log('IntentShim Web: Initialized');
|
|
35
|
+
}
|
|
36
|
+
registerBroadcastReceiver(options) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);
|
|
39
|
+
throw this.unimplemented('Not available in web environment');
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
unregisterBroadcastReceiver() {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
this.log('IntentShim Web: unregisterBroadcastReceiver');
|
|
45
|
+
throw this.unimplemented('Not available in web environment');
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
sendBroadcast(options) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
this.log(`IntentShim Web: sendBroadcast ${options.action}`);
|
|
51
|
+
throw this.unimplemented('Not available in web environment');
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
startActivity(options) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
this.log(`IntentShim Web: startActivity ${options.action}`);
|
|
57
|
+
// For web, we can at least try to open URLs
|
|
58
|
+
if (options.url && options.action === 'android.intent.action.VIEW') {
|
|
59
|
+
window.open(options.url, '_blank');
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
throw this.unimplemented('Full intent functionality not available in web environment');
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
getIntent() {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
this.log('IntentShim Web: getIntent');
|
|
68
|
+
throw this.unimplemented('Not available in web environment');
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
startActivityForResult(options) {
|
|
72
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
+
this.log(`IntentShim Web: startActivityForResult ${options.action}`);
|
|
74
|
+
throw this.unimplemented('Not available in web environment');
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
sendResult(options) {
|
|
78
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);
|
|
80
|
+
throw this.unimplemented('Not available in web environment');
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
onIntent(callback) {
|
|
84
|
+
this.log('IntentShim Web: onIntent listener registered');
|
|
85
|
+
this.intentListeners.push(callback);
|
|
86
|
+
}
|
|
87
|
+
packageExists(packageName) {
|
|
88
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
this.log(`IntentShim Web: packageExists ${packageName}`);
|
|
90
|
+
return { exists: false };
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
setDebugMode(options) {
|
|
94
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
this.debug = options.enabled;
|
|
96
|
+
this.log(`IntentShim Web: Debug mode ${options.enabled ? 'enabled' : 'disabled'}`);
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
log(message) {
|
|
100
|
+
if (this.debug) {
|
|
101
|
+
console.log(message);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
29
105
|
|
|
30
|
-
|
|
106
|
+
var web = /*#__PURE__*/Object.freeze({
|
|
107
|
+
__proto__: null,
|
|
108
|
+
IntentShimWeb: IntentShimWeb
|
|
109
|
+
});
|
|
31
110
|
|
|
32
|
-
|
|
111
|
+
exports.ACTION_CALL = ACTION_CALL;
|
|
112
|
+
exports.ACTION_GET_CONTENT = ACTION_GET_CONTENT;
|
|
113
|
+
exports.ACTION_PICK = ACTION_PICK;
|
|
114
|
+
exports.ACTION_SEND = ACTION_SEND;
|
|
115
|
+
exports.ACTION_SENDTO = ACTION_SENDTO;
|
|
116
|
+
exports.ACTION_VIEW = ACTION_VIEW;
|
|
117
|
+
exports.EXTRA_EMAIL = EXTRA_EMAIL;
|
|
118
|
+
exports.EXTRA_STREAM = EXTRA_STREAM;
|
|
119
|
+
exports.EXTRA_SUBJECT = EXTRA_SUBJECT;
|
|
120
|
+
exports.EXTRA_TEXT = EXTRA_TEXT;
|
|
121
|
+
exports.IntentShim = IntentShim;
|
|
122
|
+
|
|
123
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
124
|
+
|
|
125
|
+
return exports;
|
|
33
126
|
|
|
34
127
|
})({}, capacitorExports);
|
|
35
128
|
//# sourceMappingURL=plugin.js.map
|
package/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/index.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\n// Register the plugin\nconst IntentShim = registerPlugin('IntentShim');\n// Export constants for direct usage in client code, matching the Cordova plugin's API\nexport const ACTION_SEND = 'android.intent.action.SEND';\nexport const ACTION_VIEW = 'android.intent.action.VIEW';\nexport const EXTRA_TEXT = 'android.intent.extra.TEXT';\nexport const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';\nexport const EXTRA_STREAM = 'android.intent.extra.STREAM';\nexport const EXTRA_EMAIL = 'android.intent.extra.EMAIL';\nexport const ACTION_CALL = 'android.intent.action.CALL';\nexport const ACTION_SENDTO = 'android.intent.action.SENDTO';\nexport const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';\nexport const ACTION_PICK = 'android.intent.action.PICK';\n// Export the plugin interface and implementation\nexport * from './definitions';\nexport { IntentShim };\n//# sourceMappingURL=index.js.map"],"names":["registerPlugin"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\n// Register the plugin with web fallback\nconst IntentShim = registerPlugin('IntentShim', {\n web: () => import('./web').then(m => new m.IntentShimWeb()),\n});\n// Export constants for direct usage in client code, matching the Cordova plugin's API\nexport const ACTION_SEND = 'android.intent.action.SEND';\nexport const ACTION_VIEW = 'android.intent.action.VIEW';\nexport const EXTRA_TEXT = 'android.intent.extra.TEXT';\nexport const EXTRA_SUBJECT = 'android.intent.extra.SUBJECT';\nexport const EXTRA_STREAM = 'android.intent.extra.STREAM';\nexport const EXTRA_EMAIL = 'android.intent.extra.EMAIL';\nexport const ACTION_CALL = 'android.intent.action.CALL';\nexport const ACTION_SENDTO = 'android.intent.action.SENDTO';\nexport const ACTION_GET_CONTENT = 'android.intent.action.GET_CONTENT';\nexport const ACTION_PICK = 'android.intent.action.PICK';\n// Export the plugin interface and implementation\nexport * from './definitions';\nexport { IntentShim };\n//# sourceMappingURL=index.js.map","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport { WebPlugin } from '@capacitor/core';\nexport class IntentShimWeb extends WebPlugin {\n constructor() {\n super();\n this.intentListeners = [];\n this.debug = false;\n this.log('IntentShim Web: Initialized');\n }\n registerBroadcastReceiver(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: registerBroadcastReceiver with filters ${JSON.stringify(options.filterActions)}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n unregisterBroadcastReceiver() {\n return __awaiter(this, void 0, void 0, function* () {\n this.log('IntentShim Web: unregisterBroadcastReceiver');\n throw this.unimplemented('Not available in web environment');\n });\n }\n sendBroadcast(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: sendBroadcast ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n startActivity(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: startActivity ${options.action}`);\n // For web, we can at least try to open URLs\n if (options.url && options.action === 'android.intent.action.VIEW') {\n window.open(options.url, '_blank');\n return;\n }\n throw this.unimplemented('Full intent functionality not available in web environment');\n });\n }\n getIntent() {\n return __awaiter(this, void 0, void 0, function* () {\n this.log('IntentShim Web: getIntent');\n throw this.unimplemented('Not available in web environment');\n });\n }\n startActivityForResult(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: startActivityForResult ${options.action}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n sendResult(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: sendResult with resultCode ${options.resultCode || 'none'} and extras ${JSON.stringify(options.extras || {})}`);\n throw this.unimplemented('Not available in web environment');\n });\n }\n onIntent(callback) {\n this.log('IntentShim Web: onIntent listener registered');\n this.intentListeners.push(callback);\n }\n packageExists(packageName) {\n return __awaiter(this, void 0, void 0, function* () {\n this.log(`IntentShim Web: packageExists ${packageName}`);\n return { exists: false };\n });\n }\n setDebugMode(options) {\n return __awaiter(this, void 0, void 0, function* () {\n this.debug = options.enabled;\n this.log(`IntentShim Web: Debug mode ${options.enabled ? 'enabled' : 'disabled'}`);\n });\n }\n log(message) {\n if (this.debug) {\n console.log(message);\n }\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","this","WebPlugin"],"mappings":"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"}
|
|
Binary file
|