@justifi/webcomponents 0.0.7 → 0.0.9
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/dist/cjs/{index-ee888432.js → index-68222998.js} +52 -0
- package/dist/cjs/index.cjs.js +10 -0
- package/dist/cjs/justifi-bank-account-form_4.cjs.entry.js +80 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{justifi-card-form_2.cjs.entry.js → payments-list-d2dfcef1.js} +49 -56
- package/dist/cjs/webcomponents.cjs.js +3 -3
- package/dist/collection/collection-manifest.json +5 -3
- package/dist/collection/components/bank-account-form/bank-account-form.js +172 -0
- package/dist/collection/components/card-form/card-form.css +1 -7
- package/dist/collection/components/card-form/card-form.js +16 -64
- package/dist/collection/components/payment-method-form/payment-method-form.css +8 -0
- package/dist/collection/components/payment-method-form/payment-method-form.js +190 -0
- package/dist/collection/index.js +3 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +4 -2
- package/dist/components/justifi-bank-account-form.d.ts +11 -0
- package/dist/components/justifi-bank-account-form.js +65 -0
- package/dist/components/justifi-card-form.js +20 -57
- package/dist/components/justifi-payment-method-form.d.ts +11 -0
- package/dist/components/justifi-payment-method-form.js +6 -0
- package/dist/components/justifi-payments-list.js +1 -1
- package/dist/components/payment-method-form.js +89 -0
- package/dist/esm/{index-2324c14b.js → index-e279d85e.js} +52 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/justifi-bank-account-form_4.entry.js +73 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{justifi-card-form_2.entry.js → payments-list-91eba70b.js} +48 -54
- package/dist/esm/webcomponents.js +3 -3
- package/dist/types/components/bank-account-form/bank-account-form.d.ts +19 -0
- package/dist/types/components/card-form/card-form.d.ts +2 -6
- package/dist/types/components/payment-method-form/payment-method-form.d.ts +17 -0
- package/dist/types/components.d.ts +49 -1
- package/dist/types/index.d.ts +3 -1
- package/dist/webcomponents/index.esm.js +1 -0
- package/dist/webcomponents/p-146348d6.js +2 -0
- package/dist/webcomponents/p-a688f9d3.entry.js +1 -0
- package/dist/webcomponents/p-c94a0f7f.js +1 -0
- package/dist/webcomponents/webcomponents.esm.js +1 -1
- package/package.json +1 -1
- package/dist/webcomponents/p-5bf626ec.js +0 -2
- package/dist/webcomponents/p-a7effb1e.entry.js +0 -1
|
@@ -717,6 +717,15 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
|
|
|
717
717
|
const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
|
|
718
718
|
const instance = hostRef.$lazyInstance$ ;
|
|
719
719
|
let promise;
|
|
720
|
+
if (isInitialLoad) {
|
|
721
|
+
{
|
|
722
|
+
hostRef.$flags$ |= 256 /* HOST_FLAGS.isListenReady */;
|
|
723
|
+
if (hostRef.$queuedListeners$) {
|
|
724
|
+
hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event));
|
|
725
|
+
hostRef.$queuedListeners$ = null;
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
}
|
|
720
729
|
endSchedule();
|
|
721
730
|
return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
|
|
722
731
|
};
|
|
@@ -1123,6 +1132,10 @@ const connectedCallback = (elm) => {
|
|
|
1123
1132
|
}
|
|
1124
1133
|
}
|
|
1125
1134
|
else {
|
|
1135
|
+
// not the first time this has connected
|
|
1136
|
+
// reattach any event listeners to the host
|
|
1137
|
+
// since they would have been removed when disconnected
|
|
1138
|
+
addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
|
|
1126
1139
|
// fire off connectedCallback() on component instance
|
|
1127
1140
|
fireConnectedCallback(hostRef.$lazyInstance$);
|
|
1128
1141
|
}
|
|
@@ -1133,6 +1146,12 @@ const disconnectedCallback = (elm) => {
|
|
|
1133
1146
|
if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
|
|
1134
1147
|
const hostRef = getHostRef(elm);
|
|
1135
1148
|
const instance = hostRef.$lazyInstance$ ;
|
|
1149
|
+
{
|
|
1150
|
+
if (hostRef.$rmListeners$) {
|
|
1151
|
+
hostRef.$rmListeners$.map((rmListener) => rmListener());
|
|
1152
|
+
hostRef.$rmListeners$ = undefined;
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1136
1155
|
{
|
|
1137
1156
|
safeCall(instance, 'disconnectedCallback');
|
|
1138
1157
|
}
|
|
@@ -1162,6 +1181,9 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1162
1181
|
{
|
|
1163
1182
|
cmpMeta.$members$ = compactMeta[2];
|
|
1164
1183
|
}
|
|
1184
|
+
{
|
|
1185
|
+
cmpMeta.$listeners$ = compactMeta[3];
|
|
1186
|
+
}
|
|
1165
1187
|
{
|
|
1166
1188
|
cmpMeta.$watchers$ = {};
|
|
1167
1189
|
}
|
|
@@ -1230,6 +1252,35 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1230
1252
|
// Fallback appLoad event
|
|
1231
1253
|
endBootstrap();
|
|
1232
1254
|
};
|
|
1255
|
+
const addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
|
|
1256
|
+
if (listeners) {
|
|
1257
|
+
listeners.map(([flags, name, method]) => {
|
|
1258
|
+
const target = elm;
|
|
1259
|
+
const handler = hostListenerProxy(hostRef, method);
|
|
1260
|
+
const opts = hostListenerOpts(flags);
|
|
1261
|
+
plt.ael(target, name, handler, opts);
|
|
1262
|
+
(hostRef.$rmListeners$ = hostRef.$rmListeners$ || []).push(() => plt.rel(target, name, handler, opts));
|
|
1263
|
+
});
|
|
1264
|
+
}
|
|
1265
|
+
};
|
|
1266
|
+
const hostListenerProxy = (hostRef, methodName) => (ev) => {
|
|
1267
|
+
try {
|
|
1268
|
+
{
|
|
1269
|
+
if (hostRef.$flags$ & 256 /* HOST_FLAGS.isListenReady */) {
|
|
1270
|
+
// instance is ready, let's call it's member method for this event
|
|
1271
|
+
hostRef.$lazyInstance$[methodName](ev);
|
|
1272
|
+
}
|
|
1273
|
+
else {
|
|
1274
|
+
(hostRef.$queuedListeners$ = hostRef.$queuedListeners$ || []).push([methodName, ev]);
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
}
|
|
1278
|
+
catch (e) {
|
|
1279
|
+
consoleError(e);
|
|
1280
|
+
}
|
|
1281
|
+
};
|
|
1282
|
+
// prettier-ignore
|
|
1283
|
+
const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !== 0;
|
|
1233
1284
|
const hostRefs = /*@__PURE__*/ new WeakMap();
|
|
1234
1285
|
const getHostRef = (ref) => hostRefs.get(ref);
|
|
1235
1286
|
const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
|
|
@@ -1248,6 +1299,7 @@ const registerHost = (elm, cmpMeta) => {
|
|
|
1248
1299
|
elm['s-p'] = [];
|
|
1249
1300
|
elm['s-rc'] = [];
|
|
1250
1301
|
}
|
|
1302
|
+
addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
|
|
1251
1303
|
return hostRefs.set(elm, hostRef);
|
|
1252
1304
|
};
|
|
1253
1305
|
const isMemberInElement = (elm, memberName) => memberName in elm;
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,2 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const paymentsList = require('./payments-list-d2dfcef1.js');
|
|
6
|
+
require('./index-68222998.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
exports.BankAccountForm = paymentsList.BankAccountForm;
|
|
11
|
+
exports.CardForm = paymentsList.CardForm;
|
|
12
|
+
exports.PaymentsList = paymentsList.PaymentsList;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const paymentsList = require('./payments-list-d2dfcef1.js');
|
|
6
|
+
const index = require('./index-68222998.js');
|
|
7
|
+
|
|
8
|
+
const paymentMethodFormCss = ":host{display:block}justifi-payment-method-form iframe{border:none;width:100%}";
|
|
9
|
+
|
|
10
|
+
var DispatchedEventTypes;
|
|
11
|
+
(function (DispatchedEventTypes) {
|
|
12
|
+
DispatchedEventTypes["blur"] = "blur";
|
|
13
|
+
DispatchedEventTypes["change"] = "change";
|
|
14
|
+
DispatchedEventTypes["ready"] = "ready";
|
|
15
|
+
DispatchedEventTypes["tokenize"] = "tokenize";
|
|
16
|
+
})(DispatchedEventTypes || (DispatchedEventTypes = {}));
|
|
17
|
+
const PaymentMethodForm = class {
|
|
18
|
+
constructor(hostRef) {
|
|
19
|
+
index.registerInstance(this, hostRef);
|
|
20
|
+
this.paymentMethodFormReady = index.createEvent(this, "paymentMethodFormReady", 7);
|
|
21
|
+
this.paymentMethodFormChange = index.createEvent(this, "paymentMethodFormChange", 7);
|
|
22
|
+
this.paymentMethodFormBlur = index.createEvent(this, "paymentMethodFormBlur", 7);
|
|
23
|
+
this.paymentMethodFormTokenize = index.createEvent(this, "paymentMethodFormTokenize", 7);
|
|
24
|
+
this.iframeOrigin = undefined;
|
|
25
|
+
}
|
|
26
|
+
connectedCallback() {
|
|
27
|
+
window.addEventListener('message', this.dispatchMessageEvent.bind(this));
|
|
28
|
+
}
|
|
29
|
+
disconnectedCallback() {
|
|
30
|
+
window.removeEventListener('message', this.dispatchMessageEvent.bind(this));
|
|
31
|
+
}
|
|
32
|
+
dispatchMessageEvent(messageEvent) {
|
|
33
|
+
const messagePayload = messageEvent.data;
|
|
34
|
+
const messageType = messagePayload.eventType;
|
|
35
|
+
const messageData = messagePayload.data;
|
|
36
|
+
switch (messageType) {
|
|
37
|
+
case DispatchedEventTypes.ready:
|
|
38
|
+
this.paymentMethodFormReady.emit(messageData);
|
|
39
|
+
break;
|
|
40
|
+
case DispatchedEventTypes.change:
|
|
41
|
+
this.paymentMethodFormChange.emit(messageData);
|
|
42
|
+
break;
|
|
43
|
+
case DispatchedEventTypes.blur:
|
|
44
|
+
this.paymentMethodFormBlur.emit(messageData);
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
triggerTokenization(clientKey, paymentMethodMetadata, account) {
|
|
49
|
+
if (this.iframeElement && this.iframeElement.contentWindow) {
|
|
50
|
+
this.iframeElement.contentWindow.postMessage({
|
|
51
|
+
eventType: DispatchedEventTypes.tokenize,
|
|
52
|
+
clientKey: clientKey,
|
|
53
|
+
paymentMethodMetadata: paymentMethodMetadata,
|
|
54
|
+
account: account
|
|
55
|
+
}, '*');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async tokenize(clientKey, paymentMethodMetadata, account) {
|
|
59
|
+
return new Promise((resolve) => {
|
|
60
|
+
const tokenizeEventListener = (event) => {
|
|
61
|
+
if (event.data.eventType !== DispatchedEventTypes.tokenize)
|
|
62
|
+
return;
|
|
63
|
+
window.removeEventListener('message', tokenizeEventListener);
|
|
64
|
+
resolve(event.data.data);
|
|
65
|
+
};
|
|
66
|
+
window.addEventListener('message', tokenizeEventListener);
|
|
67
|
+
this.triggerTokenization(clientKey, paymentMethodMetadata, account);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
;
|
|
71
|
+
render() {
|
|
72
|
+
return (index.h(index.Host, null, index.h("iframe", { id: "justifi-payment-method-form", src: this.iframeOrigin, ref: (el) => this.iframeElement = el })));
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
PaymentMethodForm.style = paymentMethodFormCss;
|
|
76
|
+
|
|
77
|
+
exports.justifi_bank_account_form = paymentsList.BankAccountForm;
|
|
78
|
+
exports.justifi_card_form = paymentsList.CardForm;
|
|
79
|
+
exports.justifi_payments_list = paymentsList.PaymentsList;
|
|
80
|
+
exports.justifi_payment_method_form = PaymentMethodForm;
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-68222998.js');
|
|
6
6
|
|
|
7
7
|
/*
|
|
8
|
-
Stencil Client Patch Esm v2.
|
|
8
|
+
Stencil Client Patch Esm v2.20.0 | MIT Licensed | https://stenciljs.com
|
|
9
9
|
*/
|
|
10
10
|
const patchEsm = () => {
|
|
11
11
|
return index.promiseResolve();
|
|
@@ -14,7 +14,7 @@ const patchEsm = () => {
|
|
|
14
14
|
const defineCustomElements = (win, options) => {
|
|
15
15
|
if (typeof window === 'undefined') return Promise.resolve();
|
|
16
16
|
return patchEsm().then(() => {
|
|
17
|
-
return index.bootstrapLazy([["justifi-
|
|
17
|
+
return index.bootstrapLazy([["justifi-bank-account-form_4.cjs",[[0,"justifi-bank-account-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]},[[0,"paymentMethodFormReady","readyHandler"],[0,"paymentMethodFormChange","changeHandler"],[0,"paymentMethodFormBlur","blurHandler"],[0,"paymentMethodFormTokenize","tokenizeHandler"]]],[0,"justifi-card-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]}],[1,"justifi-payments-list",{"accountId":[1,"account-id"],"auth":[16],"payments":[32]}],[0,"justifi-payment-method-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]}]]]], options);
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
20
|
|
|
@@ -1,18 +1,45 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const index = require('./index-68222998.js');
|
|
4
4
|
|
|
5
|
-
const
|
|
5
|
+
const BankAccountForm = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
index.registerInstance(this, hostRef);
|
|
8
|
+
this.bankAccountFormReady = index.createEvent(this, "bankAccountFormReady", 7);
|
|
9
|
+
this.bankAccountFormChange = index.createEvent(this, "bankAccountFormChange", 7);
|
|
10
|
+
this.bankAccountFormBlur = index.createEvent(this, "bankAccountFormBlur", 7);
|
|
11
|
+
this.bankAccountFormTokenize = index.createEvent(this, "bankAccountFormTokenize", 7);
|
|
12
|
+
this.iframeOrigin = undefined;
|
|
13
|
+
}
|
|
14
|
+
readyHandler(event) {
|
|
15
|
+
this.bankAccountFormReady.emit(event);
|
|
16
|
+
}
|
|
17
|
+
changeHandler(event) {
|
|
18
|
+
this.bankAccountFormChange.emit(event);
|
|
19
|
+
}
|
|
20
|
+
blurHandler(event) {
|
|
21
|
+
this.bankAccountFormBlur.emit(event);
|
|
22
|
+
}
|
|
23
|
+
tokenizeHandler(event) {
|
|
24
|
+
this.bankAccountFormTokenize.emit(event);
|
|
25
|
+
}
|
|
26
|
+
async tokenize(...args) {
|
|
27
|
+
if (!this.childRef) {
|
|
28
|
+
throw new Error('Cannot call tokenize');
|
|
29
|
+
}
|
|
30
|
+
return this.childRef.tokenize(...args);
|
|
31
|
+
}
|
|
32
|
+
render() {
|
|
33
|
+
return (index.h("justifi-payment-method-form", { ref: el => {
|
|
34
|
+
if (el) {
|
|
35
|
+
this.childRef = el;
|
|
36
|
+
}
|
|
37
|
+
}, "iframe-origin": this.iframeOrigin || 'https://js.justifi.ai/bank-account', "payment-method-form-ready": this.bankAccountFormReady, "payment-method-form-change": this.bankAccountFormChange, "payment-method-form-blur": this.bankAccountFormBlur, "payment-method-form-tokenize": this.bankAccountFormTokenize }));
|
|
38
|
+
}
|
|
39
|
+
};
|
|
6
40
|
|
|
7
|
-
const cardFormCss = "
|
|
41
|
+
const cardFormCss = "justifi-card-form iframe{height:55px}";
|
|
8
42
|
|
|
9
|
-
var DispatchedEventTypes;
|
|
10
|
-
(function (DispatchedEventTypes) {
|
|
11
|
-
DispatchedEventTypes["blur"] = "blur";
|
|
12
|
-
DispatchedEventTypes["change"] = "change";
|
|
13
|
-
DispatchedEventTypes["ready"] = "ready";
|
|
14
|
-
DispatchedEventTypes["tokenize"] = "tokenize";
|
|
15
|
-
})(DispatchedEventTypes || (DispatchedEventTypes = {}));
|
|
16
43
|
const CardForm = class {
|
|
17
44
|
constructor(hostRef) {
|
|
18
45
|
index.registerInstance(this, hostRef);
|
|
@@ -22,53 +49,18 @@ const CardForm = class {
|
|
|
22
49
|
this.cardFormTokenize = index.createEvent(this, "cardFormTokenize", 7);
|
|
23
50
|
this.iframeOrigin = undefined;
|
|
24
51
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
disconnectedCallback() {
|
|
29
|
-
window.removeEventListener('message', this.dispatchMessageEvent.bind(this));
|
|
30
|
-
}
|
|
31
|
-
dispatchMessageEvent(messageEvent) {
|
|
32
|
-
const messagePayload = messageEvent.data;
|
|
33
|
-
const messageType = messagePayload.eventType;
|
|
34
|
-
const messageData = messagePayload.data;
|
|
35
|
-
switch (messageType) {
|
|
36
|
-
case DispatchedEventTypes.ready:
|
|
37
|
-
this.cardFormReady.emit(messageData);
|
|
38
|
-
break;
|
|
39
|
-
case DispatchedEventTypes.change:
|
|
40
|
-
this.cardFormChange.emit(messageData);
|
|
41
|
-
break;
|
|
42
|
-
case DispatchedEventTypes.blur:
|
|
43
|
-
this.cardFormBlur.emit(messageData);
|
|
44
|
-
break;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
triggerTokenization(clientKey, paymentMethodMetadata, account) {
|
|
48
|
-
if (this.iframeElement && this.iframeElement.contentWindow) {
|
|
49
|
-
this.iframeElement.contentWindow.postMessage({
|
|
50
|
-
eventType: DispatchedEventTypes.tokenize,
|
|
51
|
-
clientKey: clientKey,
|
|
52
|
-
paymentMethodMetadata: paymentMethodMetadata,
|
|
53
|
-
account: account
|
|
54
|
-
}, '*');
|
|
52
|
+
async tokenize(...args) {
|
|
53
|
+
if (!this.childRef) {
|
|
54
|
+
throw new Error('Cannot call tokenize');
|
|
55
55
|
}
|
|
56
|
+
return this.childRef.tokenize(...args);
|
|
56
57
|
}
|
|
57
|
-
async tokenize(clientKey, paymentMethodMetadata, account) {
|
|
58
|
-
return new Promise((resolve) => {
|
|
59
|
-
const tokenizeEventListener = (event) => {
|
|
60
|
-
if (event.data.eventType !== DispatchedEventTypes.tokenize)
|
|
61
|
-
return;
|
|
62
|
-
window.removeEventListener('message', tokenizeEventListener);
|
|
63
|
-
resolve(event.data.data);
|
|
64
|
-
};
|
|
65
|
-
window.addEventListener('message', tokenizeEventListener);
|
|
66
|
-
this.triggerTokenization(clientKey, paymentMethodMetadata, account);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
;
|
|
70
58
|
render() {
|
|
71
|
-
return (index.h(
|
|
59
|
+
return (index.h("justifi-payment-method-form", { ref: el => {
|
|
60
|
+
if (el) {
|
|
61
|
+
this.childRef = el;
|
|
62
|
+
}
|
|
63
|
+
}, "iframe-origin": this.iframeOrigin || 'https://js.justifi.ai/card', "payment-method-form-ready": this.cardFormReady, "payment-method-form-change": this.cardFormChange, "payment-method-form-blur": this.cardFormBlur, "payment-method-form-tokenize": this.cardFormTokenize }));
|
|
72
64
|
}
|
|
73
65
|
};
|
|
74
66
|
CardForm.style = cardFormCss;
|
|
@@ -4301,5 +4293,6 @@ const PaymentsList = class {
|
|
|
4301
4293
|
};
|
|
4302
4294
|
PaymentsList.style = paymentsListCss;
|
|
4303
4295
|
|
|
4304
|
-
exports.
|
|
4305
|
-
exports.
|
|
4296
|
+
exports.BankAccountForm = BankAccountForm;
|
|
4297
|
+
exports.CardForm = CardForm;
|
|
4298
|
+
exports.PaymentsList = PaymentsList;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const index = require('./index-
|
|
3
|
+
const index = require('./index-68222998.js');
|
|
4
4
|
|
|
5
5
|
/*
|
|
6
|
-
Stencil Client Patch Browser v2.
|
|
6
|
+
Stencil Client Patch Browser v2.20.0 | MIT Licensed | https://stenciljs.com
|
|
7
7
|
*/
|
|
8
8
|
const patchBrowser = () => {
|
|
9
9
|
const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('webcomponents.cjs.js', document.baseURI).href));
|
|
@@ -15,5 +15,5 @@ const patchBrowser = () => {
|
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
patchBrowser().then(options => {
|
|
18
|
-
return index.bootstrapLazy([["justifi-
|
|
18
|
+
return index.bootstrapLazy([["justifi-bank-account-form_4.cjs",[[0,"justifi-bank-account-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]},[[0,"paymentMethodFormReady","readyHandler"],[0,"paymentMethodFormChange","changeHandler"],[0,"paymentMethodFormBlur","blurHandler"],[0,"paymentMethodFormTokenize","tokenizeHandler"]]],[0,"justifi-card-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]}],[1,"justifi-payments-list",{"accountId":[1,"account-id"],"auth":[16],"payments":[32]}],[0,"justifi-payment-method-form",{"iframeOrigin":[1,"iframe-origin"],"tokenize":[64]}]]]], options);
|
|
19
19
|
});
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"entries": [
|
|
3
|
+
"./components/bank-account-form/bank-account-form.js",
|
|
3
4
|
"./components/card-form/card-form.js",
|
|
4
|
-
"./components/payments-list/payments-list.js"
|
|
5
|
+
"./components/payments-list/payments-list.js",
|
|
6
|
+
"./components/payment-method-form/payment-method-form.js"
|
|
5
7
|
],
|
|
6
8
|
"compiler": {
|
|
7
9
|
"name": "@stencil/core",
|
|
8
|
-
"version": "2.
|
|
9
|
-
"typescriptVersion": "4.
|
|
10
|
+
"version": "2.20.0",
|
|
11
|
+
"typescriptVersion": "4.8.4"
|
|
10
12
|
},
|
|
11
13
|
"collections": [],
|
|
12
14
|
"bundles": []
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
export class BankAccountForm {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.iframeOrigin = undefined;
|
|
5
|
+
}
|
|
6
|
+
readyHandler(event) {
|
|
7
|
+
this.bankAccountFormReady.emit(event);
|
|
8
|
+
}
|
|
9
|
+
changeHandler(event) {
|
|
10
|
+
this.bankAccountFormChange.emit(event);
|
|
11
|
+
}
|
|
12
|
+
blurHandler(event) {
|
|
13
|
+
this.bankAccountFormBlur.emit(event);
|
|
14
|
+
}
|
|
15
|
+
tokenizeHandler(event) {
|
|
16
|
+
this.bankAccountFormTokenize.emit(event);
|
|
17
|
+
}
|
|
18
|
+
async tokenize(...args) {
|
|
19
|
+
if (!this.childRef) {
|
|
20
|
+
throw new Error('Cannot call tokenize');
|
|
21
|
+
}
|
|
22
|
+
return this.childRef.tokenize(...args);
|
|
23
|
+
}
|
|
24
|
+
render() {
|
|
25
|
+
return (h("justifi-payment-method-form", { ref: el => {
|
|
26
|
+
if (el) {
|
|
27
|
+
this.childRef = el;
|
|
28
|
+
}
|
|
29
|
+
}, "iframe-origin": this.iframeOrigin || 'https://js.justifi.ai/bank-account', "payment-method-form-ready": this.bankAccountFormReady, "payment-method-form-change": this.bankAccountFormChange, "payment-method-form-blur": this.bankAccountFormBlur, "payment-method-form-tokenize": this.bankAccountFormTokenize }));
|
|
30
|
+
}
|
|
31
|
+
static get is() { return "justifi-bank-account-form"; }
|
|
32
|
+
static get properties() {
|
|
33
|
+
return {
|
|
34
|
+
"iframeOrigin": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"mutable": false,
|
|
37
|
+
"complexType": {
|
|
38
|
+
"original": "string",
|
|
39
|
+
"resolved": "string",
|
|
40
|
+
"references": {}
|
|
41
|
+
},
|
|
42
|
+
"required": false,
|
|
43
|
+
"optional": false,
|
|
44
|
+
"docs": {
|
|
45
|
+
"tags": [],
|
|
46
|
+
"text": ""
|
|
47
|
+
},
|
|
48
|
+
"attribute": "iframe-origin",
|
|
49
|
+
"reflect": false
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
static get events() {
|
|
54
|
+
return [{
|
|
55
|
+
"method": "bankAccountFormReady",
|
|
56
|
+
"name": "bankAccountFormReady",
|
|
57
|
+
"bubbles": true,
|
|
58
|
+
"cancelable": true,
|
|
59
|
+
"composed": true,
|
|
60
|
+
"docs": {
|
|
61
|
+
"tags": [],
|
|
62
|
+
"text": ""
|
|
63
|
+
},
|
|
64
|
+
"complexType": {
|
|
65
|
+
"original": "any",
|
|
66
|
+
"resolved": "any",
|
|
67
|
+
"references": {}
|
|
68
|
+
}
|
|
69
|
+
}, {
|
|
70
|
+
"method": "bankAccountFormChange",
|
|
71
|
+
"name": "bankAccountFormChange",
|
|
72
|
+
"bubbles": true,
|
|
73
|
+
"cancelable": true,
|
|
74
|
+
"composed": true,
|
|
75
|
+
"docs": {
|
|
76
|
+
"tags": [],
|
|
77
|
+
"text": ""
|
|
78
|
+
},
|
|
79
|
+
"complexType": {
|
|
80
|
+
"original": "any",
|
|
81
|
+
"resolved": "any",
|
|
82
|
+
"references": {}
|
|
83
|
+
}
|
|
84
|
+
}, {
|
|
85
|
+
"method": "bankAccountFormBlur",
|
|
86
|
+
"name": "bankAccountFormBlur",
|
|
87
|
+
"bubbles": true,
|
|
88
|
+
"cancelable": true,
|
|
89
|
+
"composed": true,
|
|
90
|
+
"docs": {
|
|
91
|
+
"tags": [],
|
|
92
|
+
"text": ""
|
|
93
|
+
},
|
|
94
|
+
"complexType": {
|
|
95
|
+
"original": "any",
|
|
96
|
+
"resolved": "any",
|
|
97
|
+
"references": {}
|
|
98
|
+
}
|
|
99
|
+
}, {
|
|
100
|
+
"method": "bankAccountFormTokenize",
|
|
101
|
+
"name": "bankAccountFormTokenize",
|
|
102
|
+
"bubbles": true,
|
|
103
|
+
"cancelable": true,
|
|
104
|
+
"composed": true,
|
|
105
|
+
"docs": {
|
|
106
|
+
"tags": [],
|
|
107
|
+
"text": ""
|
|
108
|
+
},
|
|
109
|
+
"complexType": {
|
|
110
|
+
"original": "{ data: any }",
|
|
111
|
+
"resolved": "{ data: any; }",
|
|
112
|
+
"references": {}
|
|
113
|
+
}
|
|
114
|
+
}];
|
|
115
|
+
}
|
|
116
|
+
static get methods() {
|
|
117
|
+
return {
|
|
118
|
+
"tokenize": {
|
|
119
|
+
"complexType": {
|
|
120
|
+
"signature": "(clientKey: string, paymentMethodMetadata: any, account?: string) => Promise<any>",
|
|
121
|
+
"parameters": [{
|
|
122
|
+
"tags": [],
|
|
123
|
+
"text": ""
|
|
124
|
+
}],
|
|
125
|
+
"references": {
|
|
126
|
+
"Promise": {
|
|
127
|
+
"location": "global"
|
|
128
|
+
},
|
|
129
|
+
"Parameters": {
|
|
130
|
+
"location": "global"
|
|
131
|
+
},
|
|
132
|
+
"HTMLJustifiPaymentMethodFormElement": {
|
|
133
|
+
"location": "global"
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"return": "Promise<any>"
|
|
137
|
+
},
|
|
138
|
+
"docs": {
|
|
139
|
+
"text": "",
|
|
140
|
+
"tags": []
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
static get listeners() {
|
|
146
|
+
return [{
|
|
147
|
+
"name": "paymentMethodFormReady",
|
|
148
|
+
"method": "readyHandler",
|
|
149
|
+
"target": undefined,
|
|
150
|
+
"capture": false,
|
|
151
|
+
"passive": false
|
|
152
|
+
}, {
|
|
153
|
+
"name": "paymentMethodFormChange",
|
|
154
|
+
"method": "changeHandler",
|
|
155
|
+
"target": undefined,
|
|
156
|
+
"capture": false,
|
|
157
|
+
"passive": false
|
|
158
|
+
}, {
|
|
159
|
+
"name": "paymentMethodFormBlur",
|
|
160
|
+
"method": "blurHandler",
|
|
161
|
+
"target": undefined,
|
|
162
|
+
"capture": false,
|
|
163
|
+
"passive": false
|
|
164
|
+
}, {
|
|
165
|
+
"name": "paymentMethodFormTokenize",
|
|
166
|
+
"method": "tokenizeHandler",
|
|
167
|
+
"target": undefined,
|
|
168
|
+
"capture": false,
|
|
169
|
+
"passive": false
|
|
170
|
+
}];
|
|
171
|
+
}
|
|
172
|
+
}
|
|
@@ -1,67 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
var DispatchedEventTypes;
|
|
3
|
-
(function (DispatchedEventTypes) {
|
|
4
|
-
DispatchedEventTypes["blur"] = "blur";
|
|
5
|
-
DispatchedEventTypes["change"] = "change";
|
|
6
|
-
DispatchedEventTypes["ready"] = "ready";
|
|
7
|
-
DispatchedEventTypes["tokenize"] = "tokenize";
|
|
8
|
-
})(DispatchedEventTypes || (DispatchedEventTypes = {}));
|
|
1
|
+
import { h } from '@stencil/core';
|
|
9
2
|
export class CardForm {
|
|
10
3
|
constructor() {
|
|
11
4
|
this.iframeOrigin = undefined;
|
|
12
5
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
disconnectedCallback() {
|
|
17
|
-
window.removeEventListener('message', this.dispatchMessageEvent.bind(this));
|
|
18
|
-
}
|
|
19
|
-
dispatchMessageEvent(messageEvent) {
|
|
20
|
-
const messagePayload = messageEvent.data;
|
|
21
|
-
const messageType = messagePayload.eventType;
|
|
22
|
-
const messageData = messagePayload.data;
|
|
23
|
-
switch (messageType) {
|
|
24
|
-
case DispatchedEventTypes.ready:
|
|
25
|
-
this.cardFormReady.emit(messageData);
|
|
26
|
-
break;
|
|
27
|
-
case DispatchedEventTypes.change:
|
|
28
|
-
this.cardFormChange.emit(messageData);
|
|
29
|
-
break;
|
|
30
|
-
case DispatchedEventTypes.blur:
|
|
31
|
-
this.cardFormBlur.emit(messageData);
|
|
32
|
-
break;
|
|
33
|
-
default:
|
|
34
|
-
break;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
triggerTokenization(clientKey, paymentMethodMetadata, account) {
|
|
38
|
-
if (this.iframeElement && this.iframeElement.contentWindow) {
|
|
39
|
-
this.iframeElement.contentWindow.postMessage({
|
|
40
|
-
eventType: DispatchedEventTypes.tokenize,
|
|
41
|
-
clientKey: clientKey,
|
|
42
|
-
paymentMethodMetadata: paymentMethodMetadata,
|
|
43
|
-
account: account
|
|
44
|
-
}, '*');
|
|
6
|
+
async tokenize(...args) {
|
|
7
|
+
if (!this.childRef) {
|
|
8
|
+
throw new Error('Cannot call tokenize');
|
|
45
9
|
}
|
|
10
|
+
return this.childRef.tokenize(...args);
|
|
46
11
|
}
|
|
47
|
-
async tokenize(clientKey, paymentMethodMetadata, account) {
|
|
48
|
-
return new Promise((resolve) => {
|
|
49
|
-
const tokenizeEventListener = (event) => {
|
|
50
|
-
if (event.data.eventType !== DispatchedEventTypes.tokenize)
|
|
51
|
-
return;
|
|
52
|
-
window.removeEventListener('message', tokenizeEventListener);
|
|
53
|
-
resolve(event.data.data);
|
|
54
|
-
};
|
|
55
|
-
window.addEventListener('message', tokenizeEventListener);
|
|
56
|
-
this.triggerTokenization(clientKey, paymentMethodMetadata, account);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
;
|
|
60
12
|
render() {
|
|
61
|
-
return (h(
|
|
13
|
+
return (h("justifi-payment-method-form", { ref: el => {
|
|
14
|
+
if (el) {
|
|
15
|
+
this.childRef = el;
|
|
16
|
+
}
|
|
17
|
+
}, "iframe-origin": this.iframeOrigin || 'https://js.justifi.ai/card', "payment-method-form-ready": this.cardFormReady, "payment-method-form-change": this.cardFormChange, "payment-method-form-blur": this.cardFormBlur, "payment-method-form-tokenize": this.cardFormTokenize }));
|
|
62
18
|
}
|
|
63
19
|
static get is() { return "justifi-card-form"; }
|
|
64
|
-
static get encapsulation() { return "shadow"; }
|
|
65
20
|
static get originalStyleUrls() {
|
|
66
21
|
return {
|
|
67
22
|
"$": ["card-form.css"]
|
|
@@ -160,26 +115,23 @@ export class CardForm {
|
|
|
160
115
|
return {
|
|
161
116
|
"tokenize": {
|
|
162
117
|
"complexType": {
|
|
163
|
-
"signature": "(clientKey: string, paymentMethodMetadata: any, account?: string) => Promise<
|
|
118
|
+
"signature": "(clientKey: string, paymentMethodMetadata: any, account?: string) => Promise<any>",
|
|
164
119
|
"parameters": [{
|
|
165
120
|
"tags": [],
|
|
166
121
|
"text": ""
|
|
167
|
-
}, {
|
|
168
|
-
"tags": [],
|
|
169
|
-
"text": ""
|
|
170
|
-
}, {
|
|
171
|
-
"tags": [],
|
|
172
|
-
"text": ""
|
|
173
122
|
}],
|
|
174
123
|
"references": {
|
|
175
124
|
"Promise": {
|
|
176
125
|
"location": "global"
|
|
177
126
|
},
|
|
178
|
-
"
|
|
127
|
+
"Parameters": {
|
|
128
|
+
"location": "global"
|
|
129
|
+
},
|
|
130
|
+
"HTMLJustifiPaymentMethodFormElement": {
|
|
179
131
|
"location": "global"
|
|
180
132
|
}
|
|
181
133
|
},
|
|
182
|
-
"return": "Promise<
|
|
134
|
+
"return": "Promise<any>"
|
|
183
135
|
},
|
|
184
136
|
"docs": {
|
|
185
137
|
"text": "",
|