@capacitor-community/stripe-terminal 0.0.1 → 5.1.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/README.md +6 -6
- package/android/src/main/java/com/getcapacitor/community/stripe/terminal/StripeTerminal.java +58 -19
- package/android/src/main/java/com/getcapacitor/community/stripe/terminal/StripeTerminalPlugin.java +0 -3
- package/android/src/main/java/com/getcapacitor/community/stripe/terminal/TerminalConnectTypes.kt +9 -0
- package/dist/docs.json +5 -5
- package/dist/esm/definitions.d.ts +2 -2
- package/dist/esm/definitions.js +8 -8
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/web.d.ts +2 -2
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +8 -8
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +8 -8
- package/dist/plugin.js.map +1 -1
- package/ios/Plugin/StripeTerminal.swift +37 -2
- package/ios/Plugin/TerminalConnectTypes.swift +7 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Stripe SDK bindings for Capacitor Applications. __This plugin is still in beta._
|
|
|
4
4
|
We have confirmed that it works well in the demo project. Please refer to https://github.com/capacitor-community/stripe/tree/main/demo/angular for the implementation.
|
|
5
5
|
|
|
6
6
|
- [x] Tap To Pay
|
|
7
|
-
- [
|
|
7
|
+
- [x] Internet
|
|
8
8
|
- [ ] Bluetooth
|
|
9
9
|
- [ ] USB
|
|
10
10
|
|
|
@@ -83,12 +83,12 @@ initialize(options: { tokenProviderEndpoint: string; isTest: boolean; }) => Prom
|
|
|
83
83
|
### discoverReaders(...)
|
|
84
84
|
|
|
85
85
|
```typescript
|
|
86
|
-
discoverReaders(options: { type:
|
|
86
|
+
discoverReaders(options: { type: TerminalConnectTypes; locationId?: string; }) => Promise<{ readers: ReaderInterface[]; }>
|
|
87
87
|
```
|
|
88
88
|
|
|
89
|
-
| Param | Type
|
|
90
|
-
| ------------- |
|
|
91
|
-
| **`options`** | <code>{ type: <a href="#
|
|
89
|
+
| Param | Type |
|
|
90
|
+
| ------------- | ----------------------------------------------------------------------------------------------------- |
|
|
91
|
+
| **`options`** | <code>{ type: <a href="#terminalconnecttypes">TerminalConnectTypes</a>; locationId?: string; }</code> |
|
|
92
92
|
|
|
93
93
|
**Returns:** <code>Promise<{ readers: ReaderInterface[]; }></code>
|
|
94
94
|
|
|
@@ -238,7 +238,7 @@ addListener(eventName: TerminalEventsEnum.Failed, listenerFunc: () => void) => P
|
|
|
238
238
|
### Enums
|
|
239
239
|
|
|
240
240
|
|
|
241
|
-
####
|
|
241
|
+
#### TerminalConnectTypes
|
|
242
242
|
|
|
243
243
|
| Members | Value |
|
|
244
244
|
| --------------- | ------------------------- |
|
package/android/src/main/java/com/getcapacitor/community/stripe/terminal/StripeTerminal.java
CHANGED
|
@@ -31,6 +31,8 @@ import com.stripe.stripeterminal.external.models.TerminalException;
|
|
|
31
31
|
import com.stripe.stripeterminal.log.LogLevel;
|
|
32
32
|
import java.util.ArrayList;
|
|
33
33
|
import java.util.List;
|
|
34
|
+
import java.util.Objects;
|
|
35
|
+
|
|
34
36
|
import org.json.JSONException;
|
|
35
37
|
|
|
36
38
|
public class StripeTerminal extends Executor {
|
|
@@ -41,6 +43,7 @@ public class StripeTerminal extends Executor {
|
|
|
41
43
|
private PluginCall collectCall;
|
|
42
44
|
private final JSObject emptyObject = new JSObject();
|
|
43
45
|
private Boolean isTest;
|
|
46
|
+
private DiscoveryMethod type;
|
|
44
47
|
|
|
45
48
|
public StripeTerminal(
|
|
46
49
|
Supplier<Context> contextSupplier,
|
|
@@ -89,9 +92,18 @@ public class StripeTerminal extends Executor {
|
|
|
89
92
|
|
|
90
93
|
public void onDiscoverReaders(final PluginCall call) {
|
|
91
94
|
this.locationId = call.getString("locationId");
|
|
95
|
+
if (Objects.equals(call.getString("type"), TerminalConnectTypes.TapToPay.getWebEventName())) {
|
|
96
|
+
this.type = DiscoveryMethod.LOCAL_MOBILE;
|
|
97
|
+
} else if (Objects.equals(call.getString("type"), TerminalConnectTypes.Internet.getWebEventName())) {
|
|
98
|
+
this.type = DiscoveryMethod.INTERNET;
|
|
99
|
+
} else {
|
|
100
|
+
call.unimplemented(call.getString("type") + " is not support now");
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
|
|
92
104
|
final DiscoveryConfiguration config = new DiscoveryConfiguration(
|
|
93
105
|
0,
|
|
94
|
-
|
|
106
|
+
this.type,
|
|
95
107
|
this.isTest,
|
|
96
108
|
call.getString("locationId")
|
|
97
109
|
);
|
|
@@ -130,29 +142,56 @@ public class StripeTerminal extends Executor {
|
|
|
130
142
|
}
|
|
131
143
|
|
|
132
144
|
public void connectReader(final PluginCall call) {
|
|
145
|
+
if (this.type == DiscoveryMethod.LOCAL_MOBILE) {
|
|
146
|
+
this.connectLocalMobileReader(call);
|
|
147
|
+
} else if (this.type == DiscoveryMethod.INTERNET) {
|
|
148
|
+
this.connectInternetReader(call);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
private void connectLocalMobileReader(final PluginCall call) {
|
|
133
153
|
JSObject reader = call.getObject("reader");
|
|
134
154
|
ConnectionConfiguration.LocalMobileConnectionConfiguration config = new ConnectionConfiguration.LocalMobileConnectionConfiguration(
|
|
135
|
-
|
|
155
|
+
this.locationId
|
|
136
156
|
);
|
|
137
157
|
Terminal
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
158
|
+
.getInstance()
|
|
159
|
+
.connectLocalMobileReader(
|
|
160
|
+
this.readers.get(reader.getInteger("index")),
|
|
161
|
+
config,
|
|
162
|
+
new ReaderCallback() {
|
|
163
|
+
@Override
|
|
164
|
+
public void onSuccess(Reader r) {
|
|
165
|
+
notifyListeners(TerminalEnumEvent.ConnectedReader.getWebEventName(), emptyObject);
|
|
166
|
+
call.resolve();
|
|
167
|
+
}
|
|
148
168
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
169
|
+
@Override
|
|
170
|
+
public void onFailure(@NonNull TerminalException ex) {
|
|
171
|
+
ex.printStackTrace();
|
|
172
|
+
call.reject(ex.getLocalizedMessage(), ex);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
private void connectInternetReader(final PluginCall call) {
|
|
179
|
+
JSObject reader = call.getObject("reader");
|
|
180
|
+
ConnectionConfiguration.InternetConnectionConfiguration config =
|
|
181
|
+
new ConnectionConfiguration.InternetConnectionConfiguration();
|
|
182
|
+
Terminal.getInstance().connectInternetReader(this.readers.get(reader.getInteger("index")), config, new ReaderCallback() {
|
|
183
|
+
@Override
|
|
184
|
+
public void onSuccess(@NonNull Reader r) {
|
|
185
|
+
notifyListeners(TerminalEnumEvent.ConnectedReader.getWebEventName(), emptyObject);
|
|
186
|
+
call.resolve();
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@Override
|
|
190
|
+
public void onFailure(@NonNull TerminalException ex) {
|
|
191
|
+
ex.printStackTrace();
|
|
192
|
+
call.reject(ex.getLocalizedMessage(), ex);
|
|
193
|
+
}
|
|
194
|
+
});
|
|
156
195
|
}
|
|
157
196
|
|
|
158
197
|
public void cancelDiscovering(final PluginCall call) {
|
package/android/src/main/java/com/getcapacitor/community/stripe/terminal/StripeTerminalPlugin.java
CHANGED
|
@@ -75,9 +75,6 @@ public class StripeTerminalPlugin extends Plugin {
|
|
|
75
75
|
|
|
76
76
|
@PluginMethod
|
|
77
77
|
public void discoverReaders(PluginCall call) {
|
|
78
|
-
if (!Objects.equals(call.getString("type"), "tap-to-pay")) {
|
|
79
|
-
call.unimplemented();
|
|
80
|
-
}
|
|
81
78
|
this.implementation.onDiscoverReaders(call);
|
|
82
79
|
}
|
|
83
80
|
|
package/dist/docs.json
CHANGED
|
@@ -23,12 +23,12 @@
|
|
|
23
23
|
},
|
|
24
24
|
{
|
|
25
25
|
"name": "discoverReaders",
|
|
26
|
-
"signature": "(options: { type:
|
|
26
|
+
"signature": "(options: { type: TerminalConnectTypes; locationId?: string; }) => Promise<{ readers: ReaderInterface[]; }>",
|
|
27
27
|
"parameters": [
|
|
28
28
|
{
|
|
29
29
|
"name": "options",
|
|
30
30
|
"docs": "",
|
|
31
|
-
"type": "{ type:
|
|
31
|
+
"type": "{ type: TerminalConnectTypes; locationId?: string | undefined; }"
|
|
32
32
|
}
|
|
33
33
|
],
|
|
34
34
|
"returns": "Promise<{ readers: ReaderInterface[]; }>",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"docs": "",
|
|
37
37
|
"complexTypes": [
|
|
38
38
|
"ReaderInterface",
|
|
39
|
-
"
|
|
39
|
+
"TerminalConnectTypes"
|
|
40
40
|
],
|
|
41
41
|
"slug": "discoverreaders"
|
|
42
42
|
},
|
|
@@ -242,8 +242,8 @@
|
|
|
242
242
|
],
|
|
243
243
|
"enums": [
|
|
244
244
|
{
|
|
245
|
-
"name": "
|
|
246
|
-
"slug": "
|
|
245
|
+
"name": "TerminalConnectTypes",
|
|
246
|
+
"slug": "terminalconnecttypes",
|
|
247
247
|
"members": [
|
|
248
248
|
{
|
|
249
249
|
"name": "Simulated",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { PluginListenerHandle } from '@capacitor/core';
|
|
2
2
|
import type { TerminalEventsEnum } from './events.enum';
|
|
3
|
-
export declare enum
|
|
3
|
+
export declare enum TerminalConnectTypes {
|
|
4
4
|
Simulated = "simulated",
|
|
5
5
|
Internet = "internet",
|
|
6
6
|
Bluetooth = "bluetooth",
|
|
@@ -18,7 +18,7 @@ export interface StripeTerminalPlugin {
|
|
|
18
18
|
isTest: boolean;
|
|
19
19
|
}): Promise<void>;
|
|
20
20
|
discoverReaders(options: {
|
|
21
|
-
type:
|
|
21
|
+
type: TerminalConnectTypes;
|
|
22
22
|
locationId?: string;
|
|
23
23
|
}): Promise<{
|
|
24
24
|
readers: ReaderInterface[];
|
package/dist/esm/definitions.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export var
|
|
2
|
-
(function (
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
})(
|
|
1
|
+
export var TerminalConnectTypes;
|
|
2
|
+
(function (TerminalConnectTypes) {
|
|
3
|
+
TerminalConnectTypes["Simulated"] = "simulated";
|
|
4
|
+
TerminalConnectTypes["Internet"] = "internet";
|
|
5
|
+
TerminalConnectTypes["Bluetooth"] = "bluetooth";
|
|
6
|
+
TerminalConnectTypes["Usb"] = "usb";
|
|
7
|
+
TerminalConnectTypes["TapToPay"] = "tap-to-pay";
|
|
8
|
+
})(TerminalConnectTypes || (TerminalConnectTypes = {}));
|
|
9
9
|
export * from './events.enum';
|
|
10
10
|
//# sourceMappingURL=definitions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC9B,+CAAuB,CAAA;IACvB,6CAAqB,CAAA;IACrB,+CAAuB,CAAA;IACvB,mCAAW,CAAA;IACX,+CAAuB,CAAA;AACzB,CAAC,EANW,oBAAoB,KAApB,oBAAoB,QAM/B;AAOD,cAAc,eAAe,CAAC","sourcesContent":["import type { PluginListenerHandle } from '@capacitor/core';\n\nimport type { TerminalEventsEnum } from './events.enum';\n\nexport enum TerminalConnectTypes {\n Simulated = 'simulated',\n Internet = 'internet',\n Bluetooth = 'bluetooth',\n Usb = 'usb',\n TapToPay = 'tap-to-pay',\n}\n\nexport type ReaderInterface = {\n index: number;\n serialNumber: string;\n};\n\nexport * from './events.enum';\nexport interface StripeTerminalPlugin {\n initialize(options: { tokenProviderEndpoint: string, isTest: boolean }): Promise<void>;\n discoverReaders(options: {\n type: TerminalConnectTypes;\n locationId?: string;\n }): Promise<{\n readers: ReaderInterface[];\n }>;\n connectReader(options: { reader: ReaderInterface }): Promise<void>;\n collect(options: { paymentIntent: string }): Promise<void>;\n addListener(\n eventName: TerminalEventsEnum.Loaded,\n listenerFunc: () => void,\n ): PluginListenerHandle;\n addListener(\n eventName: TerminalEventsEnum.DiscoveredReaders,\n listenerFunc: () => { reader: ReaderInterface },\n ): PluginListenerHandle;\n addListener(\n eventName: TerminalEventsEnum.ConnectedReader,\n listenerFunc: () => void,\n ): PluginListenerHandle;\n addListener(\n eventName: TerminalEventsEnum.Completed,\n listenerFunc: () => void,\n ): PluginListenerHandle;\n addListener(\n eventName: TerminalEventsEnum.Canceled,\n listenerFunc: () => void,\n ): PluginListenerHandle;\n addListener(\n eventName: TerminalEventsEnum.Failed,\n listenerFunc: () => void,\n ): PluginListenerHandle;\n}\n"]}
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { WebPlugin } from '@capacitor/core';
|
|
2
|
-
import type { StripeTerminalPlugin,
|
|
2
|
+
import type { StripeTerminalPlugin, TerminalConnectTypes, ReaderInterface } from './definitions';
|
|
3
3
|
export declare class StripeTerminalWeb extends WebPlugin implements StripeTerminalPlugin {
|
|
4
4
|
initialize(options: {
|
|
5
5
|
tokenProviderEndpoint: string;
|
|
6
6
|
isTest: boolean;
|
|
7
7
|
}): Promise<void>;
|
|
8
8
|
discoverReaders(options: {
|
|
9
|
-
type:
|
|
9
|
+
type: TerminalConnectTypes;
|
|
10
10
|
locationId?: string;
|
|
11
11
|
}): Promise<{
|
|
12
12
|
readers: ReaderInterface[];
|
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;AAO5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,OAAO,iBACX,SAAQ,SAAS;IAGjB,KAAK,CAAC,UAAU,CAAC,OAA2D;QAC1E,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAGrB;QAGC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,iBAAiB,EAAE;YACzD,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAoC;QACtD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n StripeTerminalPlugin,\n
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAO5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,OAAO,iBACX,SAAQ,SAAS;IAGjB,KAAK,CAAC,UAAU,CAAC,OAA2D;QAC1E,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAGrB;QAGC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,iBAAiB,EAAE;YACzD,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAoC;QACtD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n StripeTerminalPlugin,\n TerminalConnectTypes,\n ReaderInterface,\n} from './definitions';\nimport { TerminalEventsEnum } from './events.enum';\n\nexport class StripeTerminalWeb\n extends WebPlugin\n implements StripeTerminalPlugin\n{\n async initialize(options: { tokenProviderEndpoint: string, isTest: boolean }): Promise<void> {\n console.log('initialize', options);\n this.notifyListeners(TerminalEventsEnum.Loaded, null);\n }\n\n async discoverReaders(options: {\n type: TerminalConnectTypes;\n locationId?: string;\n }): Promise<{\n readers: ReaderInterface[];\n }> {\n console.log('discoverReaders', options);\n this.notifyListeners(TerminalEventsEnum.DiscoveredReaders, {\n readers: [],\n });\n return {\n readers: [],\n };\n }\n\n async connectReader(options: { reader: ReaderInterface }): Promise<void> {\n console.log('connectReader', options);\n this.notifyListeners(TerminalEventsEnum.ConnectedReader, null);\n }\n\n async collect(options: { paymentIntent: string }): Promise<void> {\n console.log('collect', options);\n this.notifyListeners(TerminalEventsEnum.Completed, null);\n }\n}\n"]}
|
package/dist/plugin.cjs.js
CHANGED
|
@@ -14,14 +14,14 @@ exports.TerminalEventsEnum = void 0;
|
|
|
14
14
|
TerminalEventsEnum["Failed"] = "terminalFailed";
|
|
15
15
|
})(exports.TerminalEventsEnum || (exports.TerminalEventsEnum = {}));
|
|
16
16
|
|
|
17
|
-
exports.
|
|
18
|
-
(function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
})(exports.
|
|
17
|
+
exports.TerminalConnectTypes = void 0;
|
|
18
|
+
(function (TerminalConnectTypes) {
|
|
19
|
+
TerminalConnectTypes["Simulated"] = "simulated";
|
|
20
|
+
TerminalConnectTypes["Internet"] = "internet";
|
|
21
|
+
TerminalConnectTypes["Bluetooth"] = "bluetooth";
|
|
22
|
+
TerminalConnectTypes["Usb"] = "usb";
|
|
23
|
+
TerminalConnectTypes["TapToPay"] = "tap-to-pay";
|
|
24
|
+
})(exports.TerminalConnectTypes || (exports.TerminalConnectTypes = {}));
|
|
25
25
|
|
|
26
26
|
const StripeTerminal = core.registerPlugin('StripeTerminal', {
|
|
27
27
|
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.StripeTerminalWeb()),
|
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/events.enum.js","esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["export var TerminalEventsEnum;\n(function (TerminalEventsEnum) {\n TerminalEventsEnum[\"Loaded\"] = \"terminalLoaded\";\n TerminalEventsEnum[\"DiscoveredReaders\"] = \"terminalDiscoveredReaders\";\n TerminalEventsEnum[\"ConnectedReader\"] = \"terminalConnectedReader\";\n TerminalEventsEnum[\"Completed\"] = \"terminalCompleted\";\n TerminalEventsEnum[\"Canceled\"] = \"terminalCanceled\";\n TerminalEventsEnum[\"Failed\"] = \"terminalFailed\";\n})(TerminalEventsEnum || (TerminalEventsEnum = {}));\n//# sourceMappingURL=events.enum.js.map","export var
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/events.enum.js","esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["export var TerminalEventsEnum;\n(function (TerminalEventsEnum) {\n TerminalEventsEnum[\"Loaded\"] = \"terminalLoaded\";\n TerminalEventsEnum[\"DiscoveredReaders\"] = \"terminalDiscoveredReaders\";\n TerminalEventsEnum[\"ConnectedReader\"] = \"terminalConnectedReader\";\n TerminalEventsEnum[\"Completed\"] = \"terminalCompleted\";\n TerminalEventsEnum[\"Canceled\"] = \"terminalCanceled\";\n TerminalEventsEnum[\"Failed\"] = \"terminalFailed\";\n})(TerminalEventsEnum || (TerminalEventsEnum = {}));\n//# sourceMappingURL=events.enum.js.map","export var TerminalConnectTypes;\n(function (TerminalConnectTypes) {\n TerminalConnectTypes[\"Simulated\"] = \"simulated\";\n TerminalConnectTypes[\"Internet\"] = \"internet\";\n TerminalConnectTypes[\"Bluetooth\"] = \"bluetooth\";\n TerminalConnectTypes[\"Usb\"] = \"usb\";\n TerminalConnectTypes[\"TapToPay\"] = \"tap-to-pay\";\n})(TerminalConnectTypes || (TerminalConnectTypes = {}));\nexport * from './events.enum';\n//# sourceMappingURL=definitions.js.map","import { registerPlugin } from '@capacitor/core';\nconst StripeTerminal = registerPlugin('StripeTerminal', {\n web: () => import('./web').then(m => new m.StripeTerminalWeb()),\n});\nexport * from './definitions';\nexport { StripeTerminal };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nimport { TerminalEventsEnum } from './events.enum';\nexport class StripeTerminalWeb extends WebPlugin {\n async initialize(options) {\n console.log('initialize', options);\n this.notifyListeners(TerminalEventsEnum.Loaded, null);\n }\n async discoverReaders(options) {\n console.log('discoverReaders', options);\n this.notifyListeners(TerminalEventsEnum.DiscoveredReaders, {\n readers: [],\n });\n return {\n readers: [],\n };\n }\n async connectReader(options) {\n console.log('connectReader', options);\n this.notifyListeners(TerminalEventsEnum.ConnectedReader, null);\n }\n async collect(options) {\n console.log('collect', options);\n this.notifyListeners(TerminalEventsEnum.Completed, null);\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["TerminalEventsEnum","TerminalConnectTypes","registerPlugin","WebPlugin"],"mappings":";;;;;;AAAWA,oCAAmB;AAC9B,CAAC,UAAU,kBAAkB,EAAE;AAC/B,IAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;AACpD,IAAI,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,2BAA2B,CAAC;AAC1E,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,yBAAyB,CAAC;AACtE,IAAI,kBAAkB,CAAC,WAAW,CAAC,GAAG,mBAAmB,CAAC;AAC1D,IAAI,kBAAkB,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC;AACxD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;AACpD,CAAC,EAAEA,0BAAkB,KAAKA,0BAAkB,GAAG,EAAE,CAAC,CAAC;;ACRxCC,sCAAqB;AAChC,CAAC,UAAU,oBAAoB,EAAE;AACjC,IAAI,oBAAoB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;AACpD,IAAI,oBAAoB,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;AAClD,IAAI,oBAAoB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;AACpD,IAAI,oBAAoB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AACxC,IAAI,oBAAoB,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC;AACpD,CAAC,EAAEA,4BAAoB,KAAKA,4BAAoB,GAAG,EAAE,CAAC,CAAC;;ACNlD,MAAC,cAAc,GAAGC,mBAAc,CAAC,gBAAgB,EAAE;AACxD,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;AACnE,CAAC;;ACDM,MAAM,iBAAiB,SAASC,cAAS,CAAC;AACjD,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE;AAC9B,QAAQ,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAC3C,QAAQ,IAAI,CAAC,eAAe,CAACH,0BAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC9D,KAAK;AACL,IAAI,MAAM,eAAe,CAAC,OAAO,EAAE;AACnC,QAAQ,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AAChD,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,iBAAiB,EAAE;AACnE,YAAY,OAAO,EAAE,EAAE;AACvB,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO;AACf,YAAY,OAAO,EAAE,EAAE;AACvB,SAAS,CAAC;AACV,KAAK;AACL,IAAI,MAAM,aAAa,CAAC,OAAO,EAAE;AACjC,QAAQ,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAC9C,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;AACvE,KAAK;AACL,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE;AAC3B,QAAQ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACxC,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACjE,KAAK;AACL;;;;;;;;;"}
|
package/dist/plugin.js
CHANGED
|
@@ -11,14 +11,14 @@ var capacitorStripeTerminal = (function (exports, core) {
|
|
|
11
11
|
TerminalEventsEnum["Failed"] = "terminalFailed";
|
|
12
12
|
})(exports.TerminalEventsEnum || (exports.TerminalEventsEnum = {}));
|
|
13
13
|
|
|
14
|
-
exports.
|
|
15
|
-
(function (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
})(exports.
|
|
14
|
+
exports.TerminalConnectTypes = void 0;
|
|
15
|
+
(function (TerminalConnectTypes) {
|
|
16
|
+
TerminalConnectTypes["Simulated"] = "simulated";
|
|
17
|
+
TerminalConnectTypes["Internet"] = "internet";
|
|
18
|
+
TerminalConnectTypes["Bluetooth"] = "bluetooth";
|
|
19
|
+
TerminalConnectTypes["Usb"] = "usb";
|
|
20
|
+
TerminalConnectTypes["TapToPay"] = "tap-to-pay";
|
|
21
|
+
})(exports.TerminalConnectTypes || (exports.TerminalConnectTypes = {}));
|
|
22
22
|
|
|
23
23
|
const StripeTerminal = core.registerPlugin('StripeTerminal', {
|
|
24
24
|
web: () => Promise.resolve().then(function () { return web; }).then(m => new m.StripeTerminalWeb()),
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/events.enum.js","esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["export var TerminalEventsEnum;\n(function (TerminalEventsEnum) {\n TerminalEventsEnum[\"Loaded\"] = \"terminalLoaded\";\n TerminalEventsEnum[\"DiscoveredReaders\"] = \"terminalDiscoveredReaders\";\n TerminalEventsEnum[\"ConnectedReader\"] = \"terminalConnectedReader\";\n TerminalEventsEnum[\"Completed\"] = \"terminalCompleted\";\n TerminalEventsEnum[\"Canceled\"] = \"terminalCanceled\";\n TerminalEventsEnum[\"Failed\"] = \"terminalFailed\";\n})(TerminalEventsEnum || (TerminalEventsEnum = {}));\n//# sourceMappingURL=events.enum.js.map","export var
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/events.enum.js","esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["export var TerminalEventsEnum;\n(function (TerminalEventsEnum) {\n TerminalEventsEnum[\"Loaded\"] = \"terminalLoaded\";\n TerminalEventsEnum[\"DiscoveredReaders\"] = \"terminalDiscoveredReaders\";\n TerminalEventsEnum[\"ConnectedReader\"] = \"terminalConnectedReader\";\n TerminalEventsEnum[\"Completed\"] = \"terminalCompleted\";\n TerminalEventsEnum[\"Canceled\"] = \"terminalCanceled\";\n TerminalEventsEnum[\"Failed\"] = \"terminalFailed\";\n})(TerminalEventsEnum || (TerminalEventsEnum = {}));\n//# sourceMappingURL=events.enum.js.map","export var TerminalConnectTypes;\n(function (TerminalConnectTypes) {\n TerminalConnectTypes[\"Simulated\"] = \"simulated\";\n TerminalConnectTypes[\"Internet\"] = \"internet\";\n TerminalConnectTypes[\"Bluetooth\"] = \"bluetooth\";\n TerminalConnectTypes[\"Usb\"] = \"usb\";\n TerminalConnectTypes[\"TapToPay\"] = \"tap-to-pay\";\n})(TerminalConnectTypes || (TerminalConnectTypes = {}));\nexport * from './events.enum';\n//# sourceMappingURL=definitions.js.map","import { registerPlugin } from '@capacitor/core';\nconst StripeTerminal = registerPlugin('StripeTerminal', {\n web: () => import('./web').then(m => new m.StripeTerminalWeb()),\n});\nexport * from './definitions';\nexport { StripeTerminal };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nimport { TerminalEventsEnum } from './events.enum';\nexport class StripeTerminalWeb extends WebPlugin {\n async initialize(options) {\n console.log('initialize', options);\n this.notifyListeners(TerminalEventsEnum.Loaded, null);\n }\n async discoverReaders(options) {\n console.log('discoverReaders', options);\n this.notifyListeners(TerminalEventsEnum.DiscoveredReaders, {\n readers: [],\n });\n return {\n readers: [],\n };\n }\n async connectReader(options) {\n console.log('connectReader', options);\n this.notifyListeners(TerminalEventsEnum.ConnectedReader, null);\n }\n async collect(options) {\n console.log('collect', options);\n this.notifyListeners(TerminalEventsEnum.Completed, null);\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["TerminalEventsEnum","TerminalConnectTypes","registerPlugin","WebPlugin"],"mappings":";;;AAAWA,wCAAmB;IAC9B,CAAC,UAAU,kBAAkB,EAAE;IAC/B,IAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;IACpD,IAAI,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,2BAA2B,CAAC;IAC1E,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,yBAAyB,CAAC;IACtE,IAAI,kBAAkB,CAAC,WAAW,CAAC,GAAG,mBAAmB,CAAC;IAC1D,IAAI,kBAAkB,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC;IACxD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;IACpD,CAAC,EAAEA,0BAAkB,KAAKA,0BAAkB,GAAG,EAAE,CAAC,CAAC;;ACRxCC,0CAAqB;IAChC,CAAC,UAAU,oBAAoB,EAAE;IACjC,IAAI,oBAAoB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;IACpD,IAAI,oBAAoB,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;IAClD,IAAI,oBAAoB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;IACpD,IAAI,oBAAoB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IACxC,IAAI,oBAAoB,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC;IACpD,CAAC,EAAEA,4BAAoB,KAAKA,4BAAoB,GAAG,EAAE,CAAC,CAAC;;ACNlD,UAAC,cAAc,GAAGC,mBAAc,CAAC,gBAAgB,EAAE;IACxD,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACnE,CAAC;;ICDM,MAAM,iBAAiB,SAASC,cAAS,CAAC;IACjD,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE;IAC9B,QAAQ,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,IAAI,CAAC,eAAe,CAACH,0BAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9D,KAAK;IACL,IAAI,MAAM,eAAe,CAAC,OAAO,EAAE;IACnC,QAAQ,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAChD,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,iBAAiB,EAAE;IACnE,YAAY,OAAO,EAAE,EAAE;IACvB,SAAS,CAAC,CAAC;IACX,QAAQ,OAAO;IACf,YAAY,OAAO,EAAE,EAAE;IACvB,SAAS,CAAC;IACV,KAAK;IACL,IAAI,MAAM,aAAa,CAAC,OAAO,EAAE;IACjC,QAAQ,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAC9C,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACvE,KAAK;IACL,IAAI,MAAM,OAAO,CAAC,OAAO,EAAE;IAC3B,QAAQ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,IAAI,CAAC,eAAe,CAACA,0BAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,KAAK;IACL;;;;;;;;;;;;;;;;;"}
|
|
@@ -10,6 +10,7 @@ public class StripeTerminal: NSObject, DiscoveryDelegate, LocalMobileReaderDeleg
|
|
|
10
10
|
var locationId: String?
|
|
11
11
|
var isTest: Bool?
|
|
12
12
|
var collectCancelable: Cancelable?
|
|
13
|
+
var type: DiscoveryMethod?
|
|
13
14
|
|
|
14
15
|
var readers: [Reader]?
|
|
15
16
|
|
|
@@ -21,9 +22,20 @@ public class StripeTerminal: NSObject, DiscoveryDelegate, LocalMobileReaderDeleg
|
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
func discoverReaders(_ call: CAPPluginCall) {
|
|
25
|
+
let connectType = call.getString("type")
|
|
26
|
+
|
|
27
|
+
if TerminalConnectTypes.TapToPay.rawValue == connectType {
|
|
28
|
+
self.type = .localMobile
|
|
29
|
+
} else if TerminalConnectTypes.Internet.rawValue == connectType {
|
|
30
|
+
self.type = .internet
|
|
31
|
+
} else {
|
|
32
|
+
call.unimplemented(connectType! + " is not support now")
|
|
33
|
+
return
|
|
34
|
+
}
|
|
35
|
+
|
|
24
36
|
let config = DiscoveryConfiguration(
|
|
25
|
-
discoveryMethod: .
|
|
26
|
-
simulated: self.isTest
|
|
37
|
+
discoveryMethod: self.type!,
|
|
38
|
+
simulated: self.isTest!
|
|
27
39
|
)
|
|
28
40
|
self.discoverCall = call
|
|
29
41
|
self.locationId = call.getString("locationId")
|
|
@@ -57,6 +69,14 @@ public class StripeTerminal: NSObject, DiscoveryDelegate, LocalMobileReaderDeleg
|
|
|
57
69
|
}
|
|
58
70
|
|
|
59
71
|
public func connectReader(_ call: CAPPluginCall) {
|
|
72
|
+
if (self.type == .localMobile) {
|
|
73
|
+
self.connectLocalMobileReader(call)
|
|
74
|
+
} else if (self.type == .internet) {
|
|
75
|
+
self.connectInternetReader(call)
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
private func connectLocalMobileReader(_ call: CAPPluginCall) {
|
|
60
80
|
let connectionConfig = LocalMobileConnectionConfiguration(locationId: self.locationId!)
|
|
61
81
|
let reader: JSObject = call.getObject("reader")!
|
|
62
82
|
let index: Int = reader["index"] as! Int
|
|
@@ -70,6 +90,21 @@ public class StripeTerminal: NSObject, DiscoveryDelegate, LocalMobileReaderDeleg
|
|
|
70
90
|
}
|
|
71
91
|
}
|
|
72
92
|
}
|
|
93
|
+
|
|
94
|
+
private func connectInternetReader(_ call: CAPPluginCall) {
|
|
95
|
+
let config = InternetConnectionConfiguration(failIfInUse: true)
|
|
96
|
+
let reader: JSObject = call.getObject("reader")!
|
|
97
|
+
let index: Int = reader["index"] as! Int
|
|
98
|
+
|
|
99
|
+
Terminal.shared.connectInternetReader(self.readers![index], connectionConfig: config) { reader, error in
|
|
100
|
+
if let reader = reader {
|
|
101
|
+
self.plugin?.notifyListeners(TerminalEvents.ConnectedReader.rawValue, data: [:])
|
|
102
|
+
call.resolve()
|
|
103
|
+
} else if let error = error {
|
|
104
|
+
call.reject(error.localizedDescription)
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
73
108
|
|
|
74
109
|
public func collect(_ call: CAPPluginCall) {
|
|
75
110
|
Terminal.shared.retrievePaymentIntent(clientSecret: call.getString("paymentIntent")!) { retrieveResult, retrieveError in
|