hosted-fields-sdk 1.2.8 → 1.3.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/CHANGES.md +5 -0
- package/README.md +75 -12
- package/dist/esm/sdk/api/actions.js +1 -1
- package/dist/esm/sdk/api/index.js +1 -1
- package/dist/sdk/api/actions.js +1 -1
- package/dist/sdk/api/index.js +1 -1
- package/index.d.ts +134 -0
- package/package.json +6 -1
package/CHANGES.md
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
#### 1.3.0
|
|
2
|
+
- Add ClickToPay integration support
|
|
3
|
+
- Provide high-level types with index.d.ts ([Issue 21](https://github.com/devcode-git/hosted-fields-sdk/issues/21))
|
|
4
|
+
- Make onLoadCallback optional ([Issue 22](https://github.com/devcode-git/hosted-fields-sdk/issues/21))
|
|
5
|
+
|
|
1
6
|
#### 1.2.8
|
|
2
7
|
- Add onCardBrandChangeCallback
|
|
3
8
|
|
package/README.md
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Hosted fields SDK is a toolkit that allows you generate a form/set of fields. It is published as a node-module to the public [npm registry](https://www.npmjs.com/package/hosted-fields-sdk).
|
|
4
4
|
|
|
5
5
|
> [!CAUTION]
|
|
6
|
-
> **Migration and Deprecation Notice:** Starting from version 1.0.50, it is mandatory to use the `'https://card-fields.paymentiq.io/1.
|
|
6
|
+
> **Migration and Deprecation Notice:** Starting from version 1.0.50, it is mandatory to use the `'https://card-fields.paymentiq.io/1.1.1/index.html'` as `hostedfieldsurl` value for **production** environments. Please update your configurations accordingly to avoid potential disruptions.
|
|
7
7
|
>
|
|
8
|
-
> The old hostedfieldsurl: `'https://hostedpages.paymentiq.io/1.0.51/index.html'` and well as *all versions previous to 1.0.50* **will be deprecated starting 15 March 2025**. Please note that using older versions and the old domain may expose your system to potential risks.
|
|
8
|
+
> The old hostedfieldsurl: `'https://hostedpages.paymentiq.io/1.0.51/index.html'` and well as *all versions previous to 1.0.50* **will be deprecated starting 15 March 2025**. Please note that using older versions and the old domain may expose your system to potential risks. Starting with version 1.1.1, **hostedpages** domain will not be used anymore.
|
|
9
9
|
>
|
|
10
10
|
> This change is meant to enhance security and future compliance with the new requirements in the Payment Card Industry Data Security Standards. The old domain is scheduled for deprecation. We advise all users to transition to the new domain as soon as possible to maintain compliance and benefit from improved security measures.
|
|
11
11
|
>
|
|
@@ -75,10 +75,12 @@ Expiry: `cc-exp`
|
|
|
75
75
|
|
|
76
76
|
|
|
77
77
|
#### HostedFields
|
|
78
|
-
HostedFields in turn will expose
|
|
78
|
+
HostedFields in turn will expose these functions
|
|
79
79
|
* setup
|
|
80
80
|
* get
|
|
81
81
|
* reset
|
|
82
|
+
* setClickToPayTransactionAmount
|
|
83
|
+
* clickToPayCheckout
|
|
82
84
|
|
|
83
85
|
**setup**
|
|
84
86
|
|
|
@@ -87,7 +89,7 @@ Setup is the first function you will call. It takes a config-object as its only
|
|
|
87
89
|
````js
|
|
88
90
|
{
|
|
89
91
|
merchantId: 123456789,
|
|
90
|
-
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.
|
|
92
|
+
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.1.1/index.html',
|
|
91
93
|
fields: my_fields, //fields you've generated using the Field-constructor
|
|
92
94
|
renderMode: 'single', // defaults to 'multiple', separate iframes per field
|
|
93
95
|
service: 'payment_method_service', // service of the payment method. Not mandatory (AstropayCard requires this)
|
|
@@ -96,7 +98,21 @@ Setup is the first function you will call. It takes a config-object as its only
|
|
|
96
98
|
autoFocusNext: true,
|
|
97
99
|
onLoadCallback: () => someFunction,
|
|
98
100
|
onCardBrandChangeCallback: ({ cardBrand: string }) => unknown,
|
|
99
|
-
el
|
|
101
|
+
el: A domElement to render the hosted fields in,
|
|
102
|
+
// Set the config from below if need to integrate ClickToPay
|
|
103
|
+
// The full list of attributes can be seen here: https://srci-docs.prod.srci.cloud.netcetera.com/sdk-config-properties
|
|
104
|
+
// You can override only these attributes in Hosted Fields. These are the default values:
|
|
105
|
+
clickToPayAttributes: {
|
|
106
|
+
locale: "en_US",
|
|
107
|
+
sandbox: "true", // Make sure to set it "false" in production
|
|
108
|
+
},
|
|
109
|
+
// See the full config here: https://srci-docs.prod.srci.cloud.netcetera.com/sdk-config-guide#scheme-specific-configuration
|
|
110
|
+
clickToPayConfig: "<ClickToPayConfig>",
|
|
111
|
+
onRequestIframeExpandCallback: (recommendedHeight: number) => unknown,
|
|
112
|
+
onCancelIframeExpandCallback: () => unkown,
|
|
113
|
+
// Response type here: https://srci-docs.prod.srci.cloud.netcetera.com/sdk-checkout-respons
|
|
114
|
+
onClickToPayCheckoutSuccessCallback: (response) => uknown,
|
|
115
|
+
onClickToPayCheckoutErrorCallback: (error) => unkown,
|
|
100
116
|
}
|
|
101
117
|
````
|
|
102
118
|
|
|
@@ -128,13 +144,44 @@ and will return the detected **cardBrand**(e.g. visa, mastercard, etc.).
|
|
|
128
144
|
|
|
129
145
|
This is usually used for dynamic credit card flow handling based on the card brand(e.g. for ClickToPay).
|
|
130
146
|
|
|
131
|
-
**
|
|
147
|
+
**clickToPayAattributes**
|
|
148
|
+
The attributes passed to the ClickToPay instance.
|
|
149
|
+
|
|
150
|
+
**clickToPayConfig**
|
|
151
|
+
The config passed to the ClickToPay instance.
|
|
152
|
+
|
|
153
|
+
**onRequestIframeExpandCallback**
|
|
154
|
+
This callback is triggered when the clickToPayCheckout call is performed to inform the integrator that
|
|
155
|
+
the iframe height should be changed to the **recommendedHeight** and hide all the other visible UI elements
|
|
156
|
+
to make room for the ClickToPay iframe to expand.
|
|
157
|
+
|
|
158
|
+
**onCancelIframeExpandCallback**
|
|
159
|
+
This callback is triggered when the ClickToPay checkout has finised to inform the integrator that
|
|
160
|
+
the iframe height should be restored and show all the other previously hidden UI elements.
|
|
132
161
|
|
|
133
|
-
|
|
162
|
+
**onClickToPayCheckoutSuccessCallback**
|
|
163
|
+
The callback triggered when receive a success response after a ClickToPay checkout.
|
|
134
164
|
|
|
135
|
-
|
|
165
|
+
**onClickToPayCheckoutErrorCallback**
|
|
166
|
+
The callback triggered when receive an error after a ClickToPay cehckout.
|
|
136
167
|
|
|
137
|
-
**
|
|
168
|
+
**Possible values for hostedfieldsurl:**
|
|
169
|
+
|
|
170
|
+
For test environments use: `'https://test-hostedpages.paymentiq.io/1.1.1/index.html'`.
|
|
171
|
+
|
|
172
|
+
For production environments use `'https://card-fields.paymentiq.io/1.1.1/index.html'`.
|
|
173
|
+
|
|
174
|
+
**Available versions for `'https://card-fields.paymentiq.io/1.1.1/index.html'`(where the part 1.1.1 represents the version number):**
|
|
175
|
+
- 1.1.1
|
|
176
|
+
- 1.0.61
|
|
177
|
+
- 1.0.60
|
|
178
|
+
- 1.0.58
|
|
179
|
+
- 1.0.57
|
|
180
|
+
- 1.0.56
|
|
181
|
+
- 1.0.55
|
|
182
|
+
- 1.0.54
|
|
183
|
+
- 1.0.53
|
|
184
|
+
- 1.0.52
|
|
138
185
|
- 1.0.51
|
|
139
186
|
- 1.0.50
|
|
140
187
|
|
|
@@ -178,6 +225,22 @@ var container = document.querySelector(el);
|
|
|
178
225
|
````
|
|
179
226
|
Lastly eventListener are registered to the iframe so that it picks up postMessage events.
|
|
180
227
|
|
|
228
|
+
|
|
229
|
+
**setClickToPayTransactionAmount** *(used for ClickToPay integration)*
|
|
230
|
+
|
|
231
|
+
It's used when the transaction amount should be dynamically changed.
|
|
232
|
+
|
|
233
|
+
Set ClickToPay transaction amount according to:
|
|
234
|
+
https://srci-docs.prod.srci.cloud.netcetera.com/sdk-config-guide
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
**clickToPayCheckout** *(used for ClickToPay integration)*
|
|
238
|
+
|
|
239
|
+
Perform ClickToPay checkout according to:
|
|
240
|
+
https://srci-docs.prod.srci.cloud.netcetera.com/sdk-checkout-api
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
181
244
|
## Styling
|
|
182
245
|
Styling will mainly be handled buy the application using the hosted-fields. Each field will have some basic styling but the layout will have to be supplied.
|
|
183
246
|
|
|
@@ -240,7 +303,7 @@ let fields = fieldConfig.map(conf => {
|
|
|
240
303
|
````js
|
|
241
304
|
HostedFields.setup({
|
|
242
305
|
merchantId: 123456789,
|
|
243
|
-
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.
|
|
306
|
+
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.1.1/index.html',
|
|
244
307
|
fields: fields,
|
|
245
308
|
service: 'some service',
|
|
246
309
|
styles: '* .hosted-input-container .input-container input { color: green; }',
|
|
@@ -387,7 +450,7 @@ let fields = fieldConfig.map(conf => {
|
|
|
387
450
|
|
|
388
451
|
HostedFields.setup({
|
|
389
452
|
merchantId: 123456789,
|
|
390
|
-
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.
|
|
453
|
+
hostedfieldsurl: 'https://card-fields.paymentiq.io/1.1.1/index.html',
|
|
391
454
|
fields: fields,
|
|
392
455
|
service: 'some service',
|
|
393
456
|
styles: '.hosted-input-container .input-container input { color: red; }',
|
|
@@ -413,7 +476,7 @@ Overview of Change:
|
|
|
413
476
|
We have recently updated the domain used for our card fields to enhance security and compliance with current standards. The old domain, while PCI DSS compliant, is scheduled for deprecation. We advise all users to transition to the new domain as soon as possible to maintain compliance and benefit from improved security measures.
|
|
414
477
|
|
|
415
478
|
#### New Domain:
|
|
416
|
-
Domain: `card-fields.paymentiq.io/1.
|
|
479
|
+
Domain: `card-fields.paymentiq.io/1.1.1/`
|
|
417
480
|
|
|
418
481
|
#### Compatibility Note:
|
|
419
482
|
Supported Versions: This domain supports versions starting with 1.0.50 and above. Make sure your implementation is updated to at least this version to ensure compatibility.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import _typeof from"@babel/runtime/helpers/typeof";var actions={get:"get",setupContent:"setupContent",setupSingleIframeContent:"setupSingleIframeContent",formData:"formData",formSubmit:"formSubmit",cardBrandChange:"cardBrandChange"};function _getGlobalObject(){try{if(global)return global}catch(_){try{if(window)return window}catch(_){return this}}}Object.freeze(_get__("actions"));var _RewireModuleId__=null;function _getRewireModuleId__(){var _;return null===_RewireModuleId__&&((_=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(_.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var _=_getGlobalObject();return _.__$$GLOBAL_REWIRE_REGISTRY__||(_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),_.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var _=_getRewireModuleId__(),e=_getRewireRegistry__(),t=e[_];return t||(e[_]=Object.create(null),t=e[_]),t}(()=>{var _=_getGlobalObject();_.__rewire_reset_all__||(_.__rewire_reset_all__=function(){_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__={};function _get__(_){var e=_getRewiredData__();return void 0===e[_]?_get_original__(_):(e=e[_])!==INTENTIONAL_UNDEFINED?e:void 0}function _get_original__(_){if("actions"===_)return actions}function _assign__(_,e){var t=_getRewiredData__();return void 0===t[_]?_set_original__(_,e):t[_]=e}function _set_original__(_,e){_}function _update_operation__(_,e,t){var r=_get__(e),_="++"===_?r+1:r-1;return _assign__(e,_),t?_:r}function _set__(e,_){var t=_getRewiredData__();return"object"===_typeof(e)?(Object.keys(e).forEach(function(_){t[_]=e[_]}),function(){Object.keys(e).forEach(function(_){_reset__(e)})}):(t[e]=void 0===_?INTENTIONAL_UNDEFINED:_,function(){_reset__(e)})}function _reset__(_){var e=_getRewiredData__();delete e[_],0==Object.keys(e).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(e){var t=_getRewiredData__(),r=Object.keys(e),n={};function
|
|
1
|
+
import _typeof from"@babel/runtime/helpers/typeof";var actions={get:"get",setupContent:"setupContent",setupSingleIframeContent:"setupSingleIframeContent",setupClickToPay:"setupClickToPay",formData:"formData",formSubmit:"formSubmit",cardBrandChange:"cardBrandChange",setClickToPayTransactionAmount:"setClickToPayTransactionAmount",clickToPayCheckout:"clickToPayCheckout",clickToPayCheckoutSuccess:"clickToPayCheckoutSuccess",clickToPayCheckoutError:"clickToPayCheckoutError",requestIframeExpand:"requestIframeExpand",cancelIframeExpand:"cancelIframeExpand"};function _getGlobalObject(){try{if(global)return global}catch(_){try{if(window)return window}catch(_){return this}}}Object.freeze(_get__("actions"));var _RewireModuleId__=null;function _getRewireModuleId__(){var _;return null===_RewireModuleId__&&((_=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(_.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var _=_getGlobalObject();return _.__$$GLOBAL_REWIRE_REGISTRY__||(_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),_.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var _=_getRewireModuleId__(),e=_getRewireRegistry__(),t=e[_];return t||(e[_]=Object.create(null),t=e[_]),t}(()=>{var _=_getGlobalObject();_.__rewire_reset_all__||(_.__rewire_reset_all__=function(){_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__={};function _get__(_){var e=_getRewiredData__();return void 0===e[_]?_get_original__(_):(e=e[_])!==INTENTIONAL_UNDEFINED?e:void 0}function _get_original__(_){if("actions"===_)return actions}function _assign__(_,e){var t=_getRewiredData__();return void 0===t[_]?_set_original__(_,e):t[_]=e}function _set_original__(_,e){_}function _update_operation__(_,e,t){var r=_get__(e),_="++"===_?r+1:r-1;return _assign__(e,_),t?_:r}function _set__(e,_){var t=_getRewiredData__();return"object"===_typeof(e)?(Object.keys(e).forEach(function(_){t[_]=e[_]}),function(){Object.keys(e).forEach(function(_){_reset__(e)})}):(t[e]=void 0===_?INTENTIONAL_UNDEFINED:_,function(){_reset__(e)})}function _reset__(_){var e=_getRewiredData__();delete e[_],0==Object.keys(e).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(e){var t=_getRewiredData__(),r=Object.keys(e),n={};function a(){r.forEach(function(_){t[_]=n[_]})}return function(_){r.forEach(function(_){n[_]=t[_],t[_]=e[_]});_=_();return _&&"function"==typeof _.then?_.then(a).catch(a):a(),_}}(()=>{function _(_,e){Object.defineProperty(_RewireAPI__,_,{value:e,enumerable:!1,configurable:!0})}_("__get__",_get__),_("__GetDependency__",_get__),_("__Rewire__",_set__),_("__set__",_set__),_("__reset__",_reset__),_("__ResetDependency__",_reset__),_("__with__",_with__)})();export default _RewireAPI__;export{actions,_get__ as __get__,_get__ as __GetDependency__,_set__ as __Rewire__,_set__ as __set__,_reset__ as __ResetDependency__,_RewireAPI__ as __RewireAPI__};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import _typeof from"@babel/runtime/helpers/typeof";import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var merchantId,renderMode,fields,hostedfieldsurl,service,styles,_excluded=["errors"],_excluded2=["errors"];function ownKeys(t,e){var r,_=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),_.push.apply(_,r)),_}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}import{actions}from"./actions";var el,callback,onLoadCallback,onCardBrandChangeCallback,autoFocusNext,targets=[],responses=[],onLoadCounter=0,window=document.parentWindow||document.defaultView;function setup(e){_assign__("merchantId",e.merchantId),_assign__("renderMode",e.renderMode),_assign__("hostedfieldsurl",e.hostedfieldsurl),_assign__("fields",e.fields),_assign__("service",e.service),_assign__("styles",e.styles),_assign__("callback",e.callback),_assign__("onLoadCallback",e.onLoadCallback),_assign__("onCardBrandChangeCallback",e.onCardBrandChangeCallback),_assign__("autoFocusNext",e.autoFocusNext||!1),_assign__("el",e.el),(_get__("renderMode")&&"single"===_get__("renderMode")?_get__("registerSingleIframe"):_get__("registerIframes"))()}function validateOrigin(e){return-1<[e,"https://test-hostedpages.paymentiq.io","https://hostedpages.paymentiq.io","https://card-fields.paymentiq.io"].indexOf(e)}function get(){_get__("targets").forEach(function(e){e.target.postMessage({action:_get__("actions").get,merchantId:_get__("merchantId"),id:e.id},_get__("hostedfieldsurl"))})}function reset(){_assign__("targets",[])}function registerIframes(){_assign__("targets",_get__("targets").concat(_get__("fields").map(function(e){return _get__("initIframe")(e)})))}function registerSingleIframe(){_assign__("targets",_get__("initSingleIframe")())}function eventHandler(e){var t;if(_get__("validateOrigin")(e.origin))switch(e.data.action){case _get__("actions").formData:_get__("responses").push({id:e.data.id,data:e.data.formData}),_get__("sendCallback")();break;case _get__("actions").cardBrandChange:null!=(t=_get__("onCardBrandChangeCallback"))&&t({cardBrand:e.data.cardBrand});break;case _get__("actions").formSubmit:_get__("get")()}else console.error("Received message from invalid origin",e.origin)}function sendCallback(){var t,r=_get__("responses").map(function(e){return e.id}),e=_get__("targets").map(function(e){return e.id});r.length===e.length&&(t=!0,e.forEach(function(e){t=r.includes(e)}),t)&&(e=_get__("responses").reduce(function(e,t){var r=e.errors,e=_objectWithoutProperties(e,_excluded),t=t.data,_=t.errors,t=_objectWithoutProperties(t,_excluded2),e=_objectSpread(_objectSpread({},e),t),t=_objectSpread(_objectSpread({},r),_);return 0<Object.keys(t).length&&(e.errors=t),e},{}),_assign__("responses",[]),_get__("callback")()(e))}function initIframe(e){var t=document.createElement("iframe"),r=(t.id="hosted-field-"+e.id,t.name="hosted-field-"+e.id,t.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),_=document.createElement("div");_.id="hosted-field-container-"+e.id,_.className="hosted-field-container";try{_.appendChild(t),r.appendChild(_);var n=document.querySelector("#"+t.id).contentWindow;return t.onload=_get__("createIframeProxy").bind(this,e,n),{id:t.id,target:n}}catch(e){console.log(e),_get__("onLoadCallback")()()}}function createIframeProxy(e,t){var r={};r[e.name]=e,_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.postMessage({action:_get__("actions").setupContent,styles:_get__("styles"),fields:r,service:_get__("service")},_get__("hostedfieldsurl")),_update_operation__("++","onLoadCounter",!1),_get__("onLoadCounter")===_get__("fields").length&&_get__("onLoadCallback")&&(_get__("onLoadCallback")()(),_assign__("onLoadCounter",0))}function initSingleIframe(){var e=document.createElement("iframe"),t=(e.id="hosted-field-single-iframe",e.name="hosted-field-single-iframe",e.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),r=document.createElement("div");r.id="hosted-field-container-single-iframe",r.className="hosted-field-container";try{r.appendChild(e),t.appendChild(r);var _=document.querySelector("#hosted-field-single-iframe").contentWindow;return e.onload=_get__("createSingleIframeProxy").bind(this,_get__("fields"),_),[{id:e.id,target:_}]}catch(e){console.log(e),_get__("onLoadCallback")()()}}function createSingleIframeProxy(e,t){var r={};e.forEach(function(e){r[e.name]=e}),_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.postMessage({action:_get__("actions").setupSingleIframeContent,styles:_get__("styles"),fields:r,service:_get__("service"),settings:{autoFocusNext:_get__("autoFocusNext")}},_get__("hostedfieldsurl")),_get__("onLoadCallback")()()}var HostedFields={setup:_get__("setup"),get:_get__("get"),reset:_get__("reset")};function _getGlobalObject(){try{if(global)return global}catch(e){try{if(window)return window}catch(e){return this}}}var _RewireModuleId__=null;function _getRewireModuleId__(){var e;return null===_RewireModuleId__&&((e=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(e.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var e=_getGlobalObject();return e.__$$GLOBAL_REWIRE_REGISTRY__||(e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),e.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var e=_getRewireModuleId__(),t=_getRewireRegistry__(),r=t[e];return r||(t[e]=Object.create(null),r=t[e]),r}(()=>{var e=_getGlobalObject();e.__rewire_reset_all__||(e.__rewire_reset_all__=function(){e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__={};function _get__(e){var t=_getRewiredData__();return void 0===t[e]?_get_original__(e):(t=t[e])!==INTENTIONAL_UNDEFINED?t:void 0}function _get_original__(e){switch(e){case"merchantId":return merchantId;case"renderMode":return renderMode;case"hostedfieldsurl":return hostedfieldsurl;case"fields":return fields;case"service":return service;case"styles":return styles;case"callback":return callback;case"onLoadCallback":return onLoadCallback;case"onCardBrandChangeCallback":return onCardBrandChangeCallback;case"autoFocusNext":return autoFocusNext;case"el":return el;case"registerSingleIframe":return registerSingleIframe;case"registerIframes":return registerIframes;case"targets":return targets;case"actions":return actions;case"initIframe":return initIframe;case"initSingleIframe":return initSingleIframe;case"validateOrigin":return validateOrigin;case"responses":return responses;case"sendCallback":return sendCallback;case"get":return get;case"createIframeProxy":return createIframeProxy;case"window":return window;case"eventHandler":return eventHandler;case"onLoadCounter":return onLoadCounter;case"createSingleIframeProxy":return createSingleIframeProxy;case"setup":return setup;case"reset":return reset}}function _assign__(e,t){var r=_getRewiredData__();return void 0===r[e]?_set_original__(e,t):r[e]=t}function _set_original__(e,t){switch(e){case"merchantId":return merchantId=t;case"renderMode":return renderMode=t;case"hostedfieldsurl":return hostedfieldsurl=t;case"fields":return fields=t;case"service":return service=t;case"styles":return styles=t;case"callback":return callback=t;case"onLoadCallback":return onLoadCallback=t;case"onCardBrandChangeCallback":return onCardBrandChangeCallback=t;case"autoFocusNext":return autoFocusNext=t;case"el":return el=t;case"targets":return targets=t;case"responses":return responses=t;case"onLoadCounter":return onLoadCounter=t}}function _update_operation__(e,t,r){var _=_get__(t),e="++"===e?_+1:_-1;return _assign__(t,e),r?e:_}function _set__(t,e){var r=_getRewiredData__();return"object"===_typeof(t)?(Object.keys(t).forEach(function(e){r[e]=t[e]}),function(){Object.keys(t).forEach(function(e){_reset__(t)})}):(r[t]=void 0===e?INTENTIONAL_UNDEFINED:e,function(){_reset__(t)})}function _reset__(e){var t=_getRewiredData__();delete t[e],0==Object.keys(t).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(t){var r=_getRewiredData__(),_=Object.keys(t),n={};function a(){_.forEach(function(e){r[e]=n[e]})}return function(e){_.forEach(function(e){n[e]=r[e],r[e]=t[e]});e=e();return e&&"function"==typeof e.then?e.then(a).catch(a):a(),e}}(()=>{function e(e,t){Object.defineProperty(_RewireAPI__,e,{value:t,enumerable:!1,configurable:!0})}e("__get__",_get__),e("__GetDependency__",_get__),e("__Rewire__",_set__),e("__set__",_set__),e("__reset__",_reset__),e("__ResetDependency__",_reset__),e("__with__",_with__)})();export default _RewireAPI__;export{HostedFields,_get__ as __get__,_get__ as __GetDependency__,_set__ as __Rewire__,_set__ as __set__,_reset__ as __ResetDependency__,_RewireAPI__ as __RewireAPI__};
|
|
1
|
+
import _typeof from"@babel/runtime/helpers/typeof";import _defineProperty from"@babel/runtime/helpers/defineProperty";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var merchantId,renderMode,fields,hostedfieldsurl,service,styles,_excluded=["errors"],_excluded2=["errors"];function ownKeys(t,e){var a,r=Object.keys(t);return Object.getOwnPropertySymbols&&(a=Object.getOwnPropertySymbols(t),e&&(a=a.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,a)),r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(a),!0).forEach(function(e){_defineProperty(t,e,a[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):ownKeys(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}import{actions}from"./actions";var clickToPayIframe,el,callback,onLoadCallback,onCardBrandChangeCallback,onRequestIframeExpandCallback,onCancelIframeExpandCallback,onClickToPayCheckoutSuccessCallback,onClickToPayCheckoutErrorCallback,autoFocusNext,clickToPayAttributes,clickToPayConfig,targets=[],responses=[],onLoadCounter=0,window=document.parentWindow||document.defaultView,recommendedExpandedHeight=850,iframeAllowPermissions="payment";function setup(e){_assign__("merchantId",e.merchantId),_assign__("renderMode",e.renderMode),_assign__("hostedfieldsurl",e.hostedfieldsurl),_assign__("fields",e.fields),_assign__("service",e.service),_assign__("styles",e.styles),_assign__("callback",e.callback),_assign__("onLoadCallback",e.onLoadCallback),_assign__("onCardBrandChangeCallback",e.onCardBrandChangeCallback),_assign__("onRequestIframeExpandCallback",e.onRequestIframeExpandCallback),_assign__("onCancelIframeExpandCallback",e.onCancelIframeExpandCallback),_assign__("onClickToPayCheckoutSuccessCallback",e.onClickToPayCheckoutSuccessCallback),_assign__("onClickToPayCheckoutErrorCallback",e.onClickToPayCheckoutErrorCallback),_assign__("autoFocusNext",e.autoFocusNext||!1),_assign__("el",e.el),_assign__("clickToPayConfig",e.clickToPayConfig),_assign__("clickToPayAttributes",e.clickToPayAttributes),(_get__("renderMode")&&"single"===_get__("renderMode")?_get__("registerSingleIframe"):_get__("registerIframes"))()}function validateOrigin(e){return-1<[e,"https://test-hostedpages.paymentiq.io","https://hostedpages.paymentiq.io","https://card-fields.paymentiq.io"].indexOf(e)}function get(){_get__("targets").forEach(function(e){e.target.postMessage({action:_get__("actions").get,merchantId:_get__("merchantId"),id:e.id},_get__("hostedfieldsurl"))})}function reset(){_assign__("targets",[]),_assign__("clickToPayIframe",void 0)}function assertClickToPayIsSet(){return _get__("clickToPayConfig")?!!_get__("clickToPayIframe")||(console.error("ClickToPay target not set internally"),!1):(console.error("ClickToPay config not set"),!1)}function setClickToPayTransactionAmount(e){_get__("assertClickToPayIsSet")()&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").setClickToPayTransactionAmount,transactionAmount:e},_get__("hostedfieldsurl"))}function clickToPayCheckout(e){_get__("assertClickToPayIsSet")()&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").clickToPayCheckout,payload:e},_get__("hostedfieldsurl"))}function registerIframes(){_assign__("targets",_get__("targets").concat(_get__("fields").map(function(e){return _get__("initIframe")(e)})))}function registerSingleIframe(){_assign__("targets",_get__("initSingleIframe")())}function eventHandler(e){var t;if(_get__("validateOrigin")(e.origin))switch(e.data.action){case _get__("actions").formData:_get__("responses").push({id:e.data.id,data:e.data.formData}),_get__("sendCallback")();break;case _get__("actions").cardBrandChange:null!=(t=_get__("onCardBrandChangeCallback"))&&t({cardBrand:e.data.cardBrand});break;case _get__("actions").requestIframeExpand:null!=(t=_get__("onRequestIframeExpandCallback"))&&t(_get__("recommendedExpandedHeight")),_get__("clickToPayIframe").classList.add("expanded");break;case _get__("actions").clickToPayCheckoutSuccess:null!=(t=_get__("onClickToPayCheckoutSuccessCallback"))&&t(e.data.response);break;case _get__("actions").clickToPayCheckoutError:null!=(t=_get__("onClickToPayCheckoutErrorCallback"))&&t(e.data.error);break;case _get__("actions").cancelIframeExpand:null!=(t=_get__("onCancelIframeExpandCallback"))&&t(),_get__("clickToPayIframe").classList.remove("expanded");break;case _get__("actions").formSubmit:_get__("get")()}else console.error("Received message from invalid origin",e.origin)}function sendCallback(){var t,a=_get__("responses").map(function(e){return e.id}),e=_get__("targets").map(function(e){return e.id});a.length===e.length&&(t=!0,e.forEach(function(e){t=a.includes(e)}),t)&&(e=_get__("responses").reduce(function(e,t){var a=e.errors,e=_objectWithoutProperties(e,_excluded),t=t.data,r=t.errors,t=_objectWithoutProperties(t,_excluded2),e=_objectSpread(_objectSpread({},e),t),t=_objectSpread(_objectSpread({},a),r);return 0<Object.keys(t).length&&(e.errors=t),e},{}),_assign__("responses",[]),_get__("callback")()(e))}function handleOnLoad(e){var t;null!=(t=_get__("onLoadCallback"))&&t()(),e&&(_assign__("clickToPayIframe",e),_get__("clickToPayConfig"))&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").setupClickToPay,attributes:_get__("clickToPayAttributes"),config:_get__("clickToPayConfig")},_get__("hostedfieldsurl"))}function initIframe(e){var t=document.createElement("iframe"),a=(t.id="hosted-field-"+e.id,t.name="hosted-field-"+e.id,t.allow=_get__("iframeAllowPermissions"),t.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),r=document.createElement("div");r.id="hosted-field-container-"+e.id,r.className="hosted-field-container";try{r.appendChild(t),a.appendChild(r);var n=document.querySelector("#"+t.id);return t.onload=_get__("createIframeProxy").bind(this,e,n),{id:t.id,target:n.contentWindow}}catch(e){console.log(e),_get__("handleOnLoad")(null)}}function createIframeProxy(e,t){var a={};a[e.name]=e,_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.contentWindow.postMessage({action:_get__("actions").setupContent,styles:_get__("styles"),fields:a,service:_get__("service")},_get__("hostedfieldsurl")),_update_operation__("++","onLoadCounter",!1),_get__("onLoadCounter")===_get__("fields").length&&_get__("onLoadCallback")&&(_get__("handleOnLoad")(t),_assign__("onLoadCounter",0))}function initSingleIframe(){var e=document.createElement("iframe"),t=(e.id="hosted-field-single-iframe",e.name="hosted-field-single-iframe",e.allow=_get__("iframeAllowPermissions"),e.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),a=document.createElement("div");a.id="hosted-field-container-single-iframe",a.className="hosted-field-container";try{a.appendChild(e),t.appendChild(a);var r=document.querySelector("#hosted-field-single-iframe");return e.onload=_get__("createSingleIframeProxy").bind(this,_get__("fields"),r),[{id:e.id,target:r.contentWindow}]}catch(e){console.log(e),_get__("handleOnLoad")(null)}}function createSingleIframeProxy(e,t){var a={};e.forEach(function(e){a[e.name]=e}),_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.contentWindow.postMessage({action:_get__("actions").setupSingleIframeContent,styles:_get__("styles"),fields:a,service:_get__("service"),settings:{autoFocusNext:_get__("autoFocusNext")}},_get__("hostedfieldsurl")),_get__("handleOnLoad")(t)}var HostedFields={setup:_get__("setup"),get:_get__("get"),reset:_get__("reset"),setClickToPayTransactionAmount:_get__("setClickToPayTransactionAmount"),clickToPayCheckout:_get__("clickToPayCheckout")};function _getGlobalObject(){try{if(global)return global}catch(e){try{if(window)return window}catch(e){return this}}}var _RewireModuleId__=null;function _getRewireModuleId__(){var e;return null===_RewireModuleId__&&((e=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(e.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var e=_getGlobalObject();return e.__$$GLOBAL_REWIRE_REGISTRY__||(e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),e.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var e=_getRewireModuleId__(),t=_getRewireRegistry__(),a=t[e];return a||(t[e]=Object.create(null),a=t[e]),a}(()=>{var e=_getGlobalObject();e.__rewire_reset_all__||(e.__rewire_reset_all__=function(){e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__={};function _get__(e){var t=_getRewiredData__();return void 0===t[e]?_get_original__(e):(t=t[e])!==INTENTIONAL_UNDEFINED?t:void 0}function _get_original__(e){switch(e){case"merchantId":return merchantId;case"renderMode":return renderMode;case"hostedfieldsurl":return hostedfieldsurl;case"fields":return fields;case"service":return service;case"styles":return styles;case"callback":return callback;case"onLoadCallback":return onLoadCallback;case"onCardBrandChangeCallback":return onCardBrandChangeCallback;case"onRequestIframeExpandCallback":return onRequestIframeExpandCallback;case"onCancelIframeExpandCallback":return onCancelIframeExpandCallback;case"onClickToPayCheckoutSuccessCallback":return onClickToPayCheckoutSuccessCallback;case"onClickToPayCheckoutErrorCallback":return onClickToPayCheckoutErrorCallback;case"autoFocusNext":return autoFocusNext;case"el":return el;case"clickToPayConfig":return clickToPayConfig;case"clickToPayAttributes":return clickToPayAttributes;case"registerSingleIframe":return registerSingleIframe;case"registerIframes":return registerIframes;case"targets":return targets;case"actions":return actions;case"clickToPayIframe":return clickToPayIframe;case"assertClickToPayIsSet":return assertClickToPayIsSet;case"initIframe":return initIframe;case"initSingleIframe":return initSingleIframe;case"validateOrigin":return validateOrigin;case"responses":return responses;case"sendCallback":return sendCallback;case"recommendedExpandedHeight":return recommendedExpandedHeight;case"get":return get;case"iframeAllowPermissions":return iframeAllowPermissions;case"createIframeProxy":return createIframeProxy;case"handleOnLoad":return handleOnLoad;case"window":return window;case"eventHandler":return eventHandler;case"onLoadCounter":return onLoadCounter;case"createSingleIframeProxy":return createSingleIframeProxy;case"setup":return setup;case"reset":return reset;case"setClickToPayTransactionAmount":return setClickToPayTransactionAmount;case"clickToPayCheckout":return clickToPayCheckout}}function _assign__(e,t){var a=_getRewiredData__();return void 0===a[e]?_set_original__(e,t):a[e]=t}function _set_original__(e,t){switch(e){case"merchantId":return merchantId=t;case"renderMode":return renderMode=t;case"hostedfieldsurl":return hostedfieldsurl=t;case"fields":return fields=t;case"service":return service=t;case"styles":return styles=t;case"callback":return callback=t;case"onLoadCallback":return onLoadCallback=t;case"onCardBrandChangeCallback":return onCardBrandChangeCallback=t;case"onRequestIframeExpandCallback":return onRequestIframeExpandCallback=t;case"onCancelIframeExpandCallback":return onCancelIframeExpandCallback=t;case"onClickToPayCheckoutSuccessCallback":return onClickToPayCheckoutSuccessCallback=t;case"onClickToPayCheckoutErrorCallback":return onClickToPayCheckoutErrorCallback=t;case"autoFocusNext":return autoFocusNext=t;case"el":return el=t;case"clickToPayConfig":return clickToPayConfig=t;case"clickToPayAttributes":return clickToPayAttributes=t;case"targets":return targets=t;case"clickToPayIframe":return clickToPayIframe=t;case"responses":return responses=t;case"onLoadCounter":return onLoadCounter=t}}function _update_operation__(e,t,a){var r=_get__(t),e="++"===e?r+1:r-1;return _assign__(t,e),a?e:r}function _set__(t,e){var a=_getRewiredData__();return"object"===_typeof(t)?(Object.keys(t).forEach(function(e){a[e]=t[e]}),function(){Object.keys(t).forEach(function(e){_reset__(t)})}):(a[t]=void 0===e?INTENTIONAL_UNDEFINED:e,function(){_reset__(t)})}function _reset__(e){var t=_getRewiredData__();delete t[e],0==Object.keys(t).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(t){var a=_getRewiredData__(),r=Object.keys(t),n={};function _(){r.forEach(function(e){a[e]=n[e]})}return function(e){r.forEach(function(e){n[e]=a[e],a[e]=t[e]});e=e();return e&&"function"==typeof e.then?e.then(_).catch(_):_(),e}}(()=>{function e(e,t){Object.defineProperty(_RewireAPI__,e,{value:t,enumerable:!1,configurable:!0})}e("__get__",_get__),e("__GetDependency__",_get__),e("__Rewire__",_set__),e("__set__",_set__),e("__reset__",_reset__),e("__ResetDependency__",_reset__),e("__with__",_with__)})();export default _RewireAPI__;export{HostedFields,_get__ as __get__,_get__ as __GetDependency__,_set__ as __Rewire__,_set__ as __set__,_reset__ as __ResetDependency__,_RewireAPI__ as __RewireAPI__};
|
package/dist/sdk/api/actions.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var _typeof=require("@babel/runtime/helpers/typeof"),actions=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.__ResetDependency__=_reset__,exports.__RewireAPI__=void 0,exports.__set__=exports.__Rewire__=_set__,exports.__GetDependency__=exports.__get__=_get__,exports.default=exports.actions=void 0,exports.actions={get:"get",setupContent:"setupContent",setupSingleIframeContent:"setupSingleIframeContent",formData:"formData",formSubmit:"formSubmit",cardBrandChange:"cardBrandChange"});function _getGlobalObject(){try{if(global)return global}catch(_){try{if(window)return window}catch(_){return this}}}Object.freeze(_get__("actions"));var _RewireModuleId__=null;function _getRewireModuleId__(){var _;return null===_RewireModuleId__&&((_=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(_.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var _=_getGlobalObject();return _.__$$GLOBAL_REWIRE_REGISTRY__||(_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),_.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var _=_getRewireModuleId__(),e=_getRewireRegistry__(),t=e[_];return t||(e[_]=Object.create(null),t=e[_]),t}(()=>{var _=_getGlobalObject();_.__rewire_reset_all__||(_.__rewire_reset_all__=function(){_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__=exports.__RewireAPI__={};function _get__(_){var e=_getRewiredData__();return void 0===e[_]?_get_original__(_):(e=e[_])!==INTENTIONAL_UNDEFINED?e:void 0}function _get_original__(_){if("actions"===_)return actions}function _assign__(_,e){var t=_getRewiredData__();return void 0===t[_]?_set_original__(_,e):t[_]=e}function _set_original__(_,e){_}function _update_operation__(_,e,t){var r=_get__(e),_="++"===_?r+1:r-1;return _assign__(e,_),t?_:r}function _set__(e,_){var t=_getRewiredData__();return"object"===_typeof(e)?(Object.keys(e).forEach(function(_){t[_]=e[_]}),function(){Object.keys(e).forEach(function(_){_reset__(e)})}):(t[e]=void 0===_?INTENTIONAL_UNDEFINED:_,function(){_reset__(e)})}function _reset__(_){var e=_getRewiredData__();delete e[_],0==Object.keys(e).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(e){var t=_getRewiredData__(),r=Object.keys(e),n={};function
|
|
1
|
+
var _typeof=require("@babel/runtime/helpers/typeof"),actions=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.__ResetDependency__=_reset__,exports.__RewireAPI__=void 0,exports.__set__=exports.__Rewire__=_set__,exports.__GetDependency__=exports.__get__=_get__,exports.default=exports.actions=void 0,exports.actions={get:"get",setupContent:"setupContent",setupSingleIframeContent:"setupSingleIframeContent",setupClickToPay:"setupClickToPay",formData:"formData",formSubmit:"formSubmit",cardBrandChange:"cardBrandChange",setClickToPayTransactionAmount:"setClickToPayTransactionAmount",clickToPayCheckout:"clickToPayCheckout",clickToPayCheckoutSuccess:"clickToPayCheckoutSuccess",clickToPayCheckoutError:"clickToPayCheckoutError",requestIframeExpand:"requestIframeExpand",cancelIframeExpand:"cancelIframeExpand"});function _getGlobalObject(){try{if(global)return global}catch(_){try{if(window)return window}catch(_){return this}}}Object.freeze(_get__("actions"));var _RewireModuleId__=null;function _getRewireModuleId__(){var _;return null===_RewireModuleId__&&((_=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(_.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var _=_getGlobalObject();return _.__$$GLOBAL_REWIRE_REGISTRY__||(_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),_.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var _=_getRewireModuleId__(),e=_getRewireRegistry__(),t=e[_];return t||(e[_]=Object.create(null),t=e[_]),t}(()=>{var _=_getGlobalObject();_.__rewire_reset_all__||(_.__rewire_reset_all__=function(){_.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__=exports.__RewireAPI__={};function _get__(_){var e=_getRewiredData__();return void 0===e[_]?_get_original__(_):(e=e[_])!==INTENTIONAL_UNDEFINED?e:void 0}function _get_original__(_){if("actions"===_)return actions}function _assign__(_,e){var t=_getRewiredData__();return void 0===t[_]?_set_original__(_,e):t[_]=e}function _set_original__(_,e){_}function _update_operation__(_,e,t){var r=_get__(e),_="++"===_?r+1:r-1;return _assign__(e,_),t?_:r}function _set__(e,_){var t=_getRewiredData__();return"object"===_typeof(e)?(Object.keys(e).forEach(function(_){t[_]=e[_]}),function(){Object.keys(e).forEach(function(_){_reset__(e)})}):(t[e]=void 0===_?INTENTIONAL_UNDEFINED:_,function(){_reset__(e)})}function _reset__(_){var e=_getRewiredData__();delete e[_],0==Object.keys(e).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(e){var t=_getRewiredData__(),r=Object.keys(e),n={};function o(){r.forEach(function(_){t[_]=n[_]})}return function(_){r.forEach(function(_){n[_]=t[_],t[_]=e[_]});_=_();return _&&"function"==typeof _.then?_.then(o).catch(o):o(),_}}(()=>{function _(_,e){Object.defineProperty(_RewireAPI__,_,{value:e,enumerable:!1,configurable:!0})}_("__get__",_get__),_("__GetDependency__",_get__),_("__Rewire__",_set__),_("__set__",_set__),_("__reset__",_reset__),_("__ResetDependency__",_reset__),_("__with__",_with__)})();var _default=exports.default=_RewireAPI__;
|
package/dist/sdk/api/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var merchantId,renderMode,fields,hostedfieldsurl,service,styles,_interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault"),_typeof=require("@babel/runtime/helpers/typeof"),_defineProperty2=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostedFields=void 0,exports.__ResetDependency__=_reset__,exports.__RewireAPI__=void 0,exports.__set__=exports.__Rewire__=_set__,exports.__GetDependency__=exports.__get__=_get__,exports.default=void 0,_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"))),_objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")),_actions=require("./actions"),_excluded=["errors"],_excluded2=["errors"];function ownKeys(t,e){var r,_=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),_.push.apply(_,r)),_}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){(0,_defineProperty2.default)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}var el,callback,onLoadCallback,onCardBrandChangeCallback,autoFocusNext,targets=[],responses=[],onLoadCounter=0,window=document.parentWindow||document.defaultView;function setup(e){_assign__("merchantId",e.merchantId),_assign__("renderMode",e.renderMode),_assign__("hostedfieldsurl",e.hostedfieldsurl),_assign__("fields",e.fields),_assign__("service",e.service),_assign__("styles",e.styles),_assign__("callback",e.callback),_assign__("onLoadCallback",e.onLoadCallback),_assign__("onCardBrandChangeCallback",e.onCardBrandChangeCallback),_assign__("autoFocusNext",e.autoFocusNext||!1),_assign__("el",e.el),(_get__("renderMode")&&"single"===_get__("renderMode")?_get__("registerSingleIframe"):_get__("registerIframes"))()}function validateOrigin(e){return-1<[e,"https://test-hostedpages.paymentiq.io","https://hostedpages.paymentiq.io","https://card-fields.paymentiq.io"].indexOf(e)}function get(){_get__("targets").forEach(function(e){e.target.postMessage({action:_get__("actions").get,merchantId:_get__("merchantId"),id:e.id},_get__("hostedfieldsurl"))})}function reset(){_assign__("targets",[])}function registerIframes(){_assign__("targets",_get__("targets").concat(_get__("fields").map(function(e){return _get__("initIframe")(e)})))}function registerSingleIframe(){_assign__("targets",_get__("initSingleIframe")())}function eventHandler(e){var t;if(_get__("validateOrigin")(e.origin))switch(e.data.action){case _get__("actions").formData:_get__("responses").push({id:e.data.id,data:e.data.formData}),_get__("sendCallback")();break;case _get__("actions").cardBrandChange:null!=(t=_get__("onCardBrandChangeCallback"))&&t({cardBrand:e.data.cardBrand});break;case _get__("actions").formSubmit:_get__("get")()}else console.error("Received message from invalid origin",e.origin)}function sendCallback(){var t,r=_get__("responses").map(function(e){return e.id}),e=_get__("targets").map(function(e){return e.id});r.length===e.length&&(t=!0,e.forEach(function(e){t=r.includes(e)}),t)&&(e=_get__("responses").reduce(function(e,t){var r=e.errors,e=(0,_objectWithoutProperties2.default)(e,_excluded),t=t.data,_=t.errors,t=(0,_objectWithoutProperties2.default)(t,_excluded2),e=_objectSpread(_objectSpread({},e),t),t=_objectSpread(_objectSpread({},r),_);return 0<Object.keys(t).length&&(e.errors=t),e},{}),_assign__("responses",[]),_get__("callback")()(e))}function initIframe(e){var t=document.createElement("iframe"),r=(t.id="hosted-field-"+e.id,t.name="hosted-field-"+e.id,t.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),_=document.createElement("div");_.id="hosted-field-container-"+e.id,_.className="hosted-field-container";try{_.appendChild(t),r.appendChild(_);var n=document.querySelector("#"+t.id).contentWindow;return t.onload=_get__("createIframeProxy").bind(this,e,n),{id:t.id,target:n}}catch(e){console.log(e),_get__("onLoadCallback")()()}}function createIframeProxy(e,t){var r={};r[e.name]=e,_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.postMessage({action:_get__("actions").setupContent,styles:_get__("styles"),fields:r,service:_get__("service")},_get__("hostedfieldsurl")),_update_operation__("++","onLoadCounter",!1),_get__("onLoadCounter")===_get__("fields").length&&_get__("onLoadCallback")&&(_get__("onLoadCallback")()(),_assign__("onLoadCounter",0))}function initSingleIframe(){var e=document.createElement("iframe"),t=(e.id="hosted-field-single-iframe",e.name="hosted-field-single-iframe",e.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),r=document.createElement("div");r.id="hosted-field-container-single-iframe",r.className="hosted-field-container";try{r.appendChild(e),t.appendChild(r);var _=document.querySelector("#hosted-field-single-iframe").contentWindow;return e.onload=_get__("createSingleIframeProxy").bind(this,_get__("fields"),_),[{id:e.id,target:_}]}catch(e){console.log(e),_get__("onLoadCallback")()()}}function createSingleIframeProxy(e,t){var r={};e.forEach(function(e){r[e.name]=e}),_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.postMessage({action:_get__("actions").setupSingleIframeContent,styles:_get__("styles"),fields:r,service:_get__("service"),settings:{autoFocusNext:_get__("autoFocusNext")}},_get__("hostedfieldsurl")),_get__("onLoadCallback")()()}var HostedFields=exports.HostedFields={setup:_get__("setup"),get:_get__("get"),reset:_get__("reset")};function _getGlobalObject(){try{if(global)return global}catch(e){try{if(window)return window}catch(e){return this}}}var _RewireModuleId__=null;function _getRewireModuleId__(){var e;return null===_RewireModuleId__&&((e=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(e.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var e=_getGlobalObject();return e.__$$GLOBAL_REWIRE_REGISTRY__||(e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),e.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var e=_getRewireModuleId__(),t=_getRewireRegistry__(),r=t[e];return r||(t[e]=Object.create(null),r=t[e]),r}(()=>{var e=_getGlobalObject();e.__rewire_reset_all__||(e.__rewire_reset_all__=function(){e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__=exports.__RewireAPI__={};function _get__(e){var t=_getRewiredData__();return void 0===t[e]?_get_original__(e):(t=t[e])!==INTENTIONAL_UNDEFINED?t:void 0}function _get_original__(e){switch(e){case"merchantId":return merchantId;case"renderMode":return renderMode;case"hostedfieldsurl":return hostedfieldsurl;case"fields":return fields;case"service":return service;case"styles":return styles;case"callback":return callback;case"onLoadCallback":return onLoadCallback;case"onCardBrandChangeCallback":return onCardBrandChangeCallback;case"autoFocusNext":return autoFocusNext;case"el":return el;case"registerSingleIframe":return registerSingleIframe;case"registerIframes":return registerIframes;case"targets":return targets;case"actions":return _actions.actions;case"initIframe":return initIframe;case"initSingleIframe":return initSingleIframe;case"validateOrigin":return validateOrigin;case"responses":return responses;case"sendCallback":return sendCallback;case"get":return get;case"createIframeProxy":return createIframeProxy;case"window":return window;case"eventHandler":return eventHandler;case"onLoadCounter":return onLoadCounter;case"createSingleIframeProxy":return createSingleIframeProxy;case"setup":return setup;case"reset":return reset}}function _assign__(e,t){var r=_getRewiredData__();return void 0===r[e]?_set_original__(e,t):r[e]=t}function _set_original__(e,t){switch(e){case"merchantId":return merchantId=t;case"renderMode":return renderMode=t;case"hostedfieldsurl":return hostedfieldsurl=t;case"fields":return fields=t;case"service":return service=t;case"styles":return styles=t;case"callback":return callback=t;case"onLoadCallback":return onLoadCallback=t;case"onCardBrandChangeCallback":return onCardBrandChangeCallback=t;case"autoFocusNext":return autoFocusNext=t;case"el":return el=t;case"targets":return targets=t;case"responses":return responses=t;case"onLoadCounter":return onLoadCounter=t}}function _update_operation__(e,t,r){var _=_get__(t),e="++"===e?_+1:_-1;return _assign__(t,e),r?e:_}function _set__(t,e){var r=_getRewiredData__();return"object"===_typeof(t)?(Object.keys(t).forEach(function(e){r[e]=t[e]}),function(){Object.keys(t).forEach(function(e){_reset__(t)})}):(r[t]=void 0===e?INTENTIONAL_UNDEFINED:e,function(){_reset__(t)})}function _reset__(e){var t=_getRewiredData__();delete t[e],0==Object.keys(t).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(t){var r=_getRewiredData__(),_=Object.keys(t),n={};function a(){_.forEach(function(e){r[e]=n[e]})}return function(e){_.forEach(function(e){n[e]=r[e],r[e]=t[e]});e=e();return e&&"function"==typeof e.then?e.then(a).catch(a):a(),e}}(()=>{function e(e,t){Object.defineProperty(_RewireAPI__,e,{value:t,enumerable:!1,configurable:!0})}e("__get__",_get__),e("__GetDependency__",_get__),e("__Rewire__",_set__),e("__set__",_set__),e("__reset__",_reset__),e("__ResetDependency__",_reset__),e("__with__",_with__)})();var _default=exports.default=_RewireAPI__;
|
|
1
|
+
var merchantId,renderMode,fields,hostedfieldsurl,service,styles,_interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault"),_typeof=require("@babel/runtime/helpers/typeof"),_defineProperty2=(Object.defineProperty(exports,"__esModule",{value:!0}),exports.HostedFields=void 0,exports.__ResetDependency__=_reset__,exports.__RewireAPI__=void 0,exports.__set__=exports.__Rewire__=_set__,exports.__GetDependency__=exports.__get__=_get__,exports.default=void 0,_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"))),_objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")),_actions=require("./actions"),_excluded=["errors"],_excluded2=["errors"];function ownKeys(t,e){var a,r=Object.keys(t);return Object.getOwnPropertySymbols&&(a=Object.getOwnPropertySymbols(t),e&&(a=a.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,a)),r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(a),!0).forEach(function(e){(0,_defineProperty2.default)(t,e,a[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):ownKeys(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}var clickToPayIframe,el,callback,onLoadCallback,onCardBrandChangeCallback,onRequestIframeExpandCallback,onCancelIframeExpandCallback,onClickToPayCheckoutSuccessCallback,onClickToPayCheckoutErrorCallback,autoFocusNext,clickToPayAttributes,clickToPayConfig,targets=[],responses=[],onLoadCounter=0,window=document.parentWindow||document.defaultView,recommendedExpandedHeight=850,iframeAllowPermissions="payment";function setup(e){_assign__("merchantId",e.merchantId),_assign__("renderMode",e.renderMode),_assign__("hostedfieldsurl",e.hostedfieldsurl),_assign__("fields",e.fields),_assign__("service",e.service),_assign__("styles",e.styles),_assign__("callback",e.callback),_assign__("onLoadCallback",e.onLoadCallback),_assign__("onCardBrandChangeCallback",e.onCardBrandChangeCallback),_assign__("onRequestIframeExpandCallback",e.onRequestIframeExpandCallback),_assign__("onCancelIframeExpandCallback",e.onCancelIframeExpandCallback),_assign__("onClickToPayCheckoutSuccessCallback",e.onClickToPayCheckoutSuccessCallback),_assign__("onClickToPayCheckoutErrorCallback",e.onClickToPayCheckoutErrorCallback),_assign__("autoFocusNext",e.autoFocusNext||!1),_assign__("el",e.el),_assign__("clickToPayConfig",e.clickToPayConfig),_assign__("clickToPayAttributes",e.clickToPayAttributes),(_get__("renderMode")&&"single"===_get__("renderMode")?_get__("registerSingleIframe"):_get__("registerIframes"))()}function validateOrigin(e){return-1<[e,"https://test-hostedpages.paymentiq.io","https://hostedpages.paymentiq.io","https://card-fields.paymentiq.io"].indexOf(e)}function get(){_get__("targets").forEach(function(e){e.target.postMessage({action:_get__("actions").get,merchantId:_get__("merchantId"),id:e.id},_get__("hostedfieldsurl"))})}function reset(){_assign__("targets",[]),_assign__("clickToPayIframe",void 0)}function assertClickToPayIsSet(){return _get__("clickToPayConfig")?!!_get__("clickToPayIframe")||(console.error("ClickToPay target not set internally"),!1):(console.error("ClickToPay config not set"),!1)}function setClickToPayTransactionAmount(e){_get__("assertClickToPayIsSet")()&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").setClickToPayTransactionAmount,transactionAmount:e},_get__("hostedfieldsurl"))}function clickToPayCheckout(e){_get__("assertClickToPayIsSet")()&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").clickToPayCheckout,payload:e},_get__("hostedfieldsurl"))}function registerIframes(){_assign__("targets",_get__("targets").concat(_get__("fields").map(function(e){return _get__("initIframe")(e)})))}function registerSingleIframe(){_assign__("targets",_get__("initSingleIframe")())}function eventHandler(e){var t;if(_get__("validateOrigin")(e.origin))switch(e.data.action){case _get__("actions").formData:_get__("responses").push({id:e.data.id,data:e.data.formData}),_get__("sendCallback")();break;case _get__("actions").cardBrandChange:null!=(t=_get__("onCardBrandChangeCallback"))&&t({cardBrand:e.data.cardBrand});break;case _get__("actions").requestIframeExpand:null!=(t=_get__("onRequestIframeExpandCallback"))&&t(_get__("recommendedExpandedHeight")),_get__("clickToPayIframe").classList.add("expanded");break;case _get__("actions").clickToPayCheckoutSuccess:null!=(t=_get__("onClickToPayCheckoutSuccessCallback"))&&t(e.data.response);break;case _get__("actions").clickToPayCheckoutError:null!=(t=_get__("onClickToPayCheckoutErrorCallback"))&&t(e.data.error);break;case _get__("actions").cancelIframeExpand:null!=(t=_get__("onCancelIframeExpandCallback"))&&t(),_get__("clickToPayIframe").classList.remove("expanded");break;case _get__("actions").formSubmit:_get__("get")()}else console.error("Received message from invalid origin",e.origin)}function sendCallback(){var t,a=_get__("responses").map(function(e){return e.id}),e=_get__("targets").map(function(e){return e.id});a.length===e.length&&(t=!0,e.forEach(function(e){t=a.includes(e)}),t)&&(e=_get__("responses").reduce(function(e,t){var a=e.errors,e=(0,_objectWithoutProperties2.default)(e,_excluded),t=t.data,r=t.errors,t=(0,_objectWithoutProperties2.default)(t,_excluded2),e=_objectSpread(_objectSpread({},e),t),t=_objectSpread(_objectSpread({},a),r);return 0<Object.keys(t).length&&(e.errors=t),e},{}),_assign__("responses",[]),_get__("callback")()(e))}function handleOnLoad(e){var t;null!=(t=_get__("onLoadCallback"))&&t()(),e&&(_assign__("clickToPayIframe",e),_get__("clickToPayConfig"))&&_get__("clickToPayIframe").contentWindow.postMessage({action:_get__("actions").setupClickToPay,attributes:_get__("clickToPayAttributes"),config:_get__("clickToPayConfig")},_get__("hostedfieldsurl"))}function initIframe(e){var t=document.createElement("iframe"),a=(t.id="hosted-field-"+e.id,t.name="hosted-field-"+e.id,t.allow=_get__("iframeAllowPermissions"),t.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),r=document.createElement("div");r.id="hosted-field-container-"+e.id,r.className="hosted-field-container";try{r.appendChild(t),a.appendChild(r);var n=document.querySelector("#"+t.id);return t.onload=_get__("createIframeProxy").bind(this,e,n),{id:t.id,target:n.contentWindow}}catch(e){console.log(e),_get__("handleOnLoad")(null)}}function createIframeProxy(e,t){var a={};a[e.name]=e,_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.contentWindow.postMessage({action:_get__("actions").setupContent,styles:_get__("styles"),fields:a,service:_get__("service")},_get__("hostedfieldsurl")),_update_operation__("++","onLoadCounter",!1),_get__("onLoadCounter")===_get__("fields").length&&_get__("onLoadCallback")&&(_get__("handleOnLoad")(t),_assign__("onLoadCounter",0))}function initSingleIframe(){var e=document.createElement("iframe"),t=(e.id="hosted-field-single-iframe",e.name="hosted-field-single-iframe",e.allow=_get__("iframeAllowPermissions"),e.src=_get__("hostedfieldsurl")+"?mid="+_get__("merchantId"),document.querySelector(_get__("el"))),a=document.createElement("div");a.id="hosted-field-container-single-iframe",a.className="hosted-field-container";try{a.appendChild(e),t.appendChild(a);var r=document.querySelector("#hosted-field-single-iframe");return e.onload=_get__("createSingleIframeProxy").bind(this,_get__("fields"),r),[{id:e.id,target:r.contentWindow}]}catch(e){console.log(e),_get__("handleOnLoad")(null)}}function createSingleIframeProxy(e,t){var a={};e.forEach(function(e){a[e.name]=e}),_get__("window").addEventListener("message",_get__("eventHandler"),!1),t.contentWindow.postMessage({action:_get__("actions").setupSingleIframeContent,styles:_get__("styles"),fields:a,service:_get__("service"),settings:{autoFocusNext:_get__("autoFocusNext")}},_get__("hostedfieldsurl")),_get__("handleOnLoad")(t)}var HostedFields=exports.HostedFields={setup:_get__("setup"),get:_get__("get"),reset:_get__("reset"),setClickToPayTransactionAmount:_get__("setClickToPayTransactionAmount"),clickToPayCheckout:_get__("clickToPayCheckout")};function _getGlobalObject(){try{if(global)return global}catch(e){try{if(window)return window}catch(e){return this}}}var _RewireModuleId__=null;function _getRewireModuleId__(){var e;return null===_RewireModuleId__&&((e=_getGlobalObject()).__$$GLOBAL_REWIRE_NEXT_MODULE_ID__||(e.__$$GLOBAL_REWIRE_NEXT_MODULE_ID__=0),_RewireModuleId__=__$$GLOBAL_REWIRE_NEXT_MODULE_ID__++),_RewireModuleId__}function _getRewireRegistry__(){var e=_getGlobalObject();return e.__$$GLOBAL_REWIRE_REGISTRY__||(e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)),e.__$$GLOBAL_REWIRE_REGISTRY__}function _getRewiredData__(){var e=_getRewireModuleId__(),t=_getRewireRegistry__(),a=t[e];return a||(t[e]=Object.create(null),a=t[e]),a}(()=>{var e=_getGlobalObject();e.__rewire_reset_all__||(e.__rewire_reset_all__=function(){e.__$$GLOBAL_REWIRE_REGISTRY__=Object.create(null)})})();var INTENTIONAL_UNDEFINED="__INTENTIONAL_UNDEFINED__",_RewireAPI__=exports.__RewireAPI__={};function _get__(e){var t=_getRewiredData__();return void 0===t[e]?_get_original__(e):(t=t[e])!==INTENTIONAL_UNDEFINED?t:void 0}function _get_original__(e){switch(e){case"merchantId":return merchantId;case"renderMode":return renderMode;case"hostedfieldsurl":return hostedfieldsurl;case"fields":return fields;case"service":return service;case"styles":return styles;case"callback":return callback;case"onLoadCallback":return onLoadCallback;case"onCardBrandChangeCallback":return onCardBrandChangeCallback;case"onRequestIframeExpandCallback":return onRequestIframeExpandCallback;case"onCancelIframeExpandCallback":return onCancelIframeExpandCallback;case"onClickToPayCheckoutSuccessCallback":return onClickToPayCheckoutSuccessCallback;case"onClickToPayCheckoutErrorCallback":return onClickToPayCheckoutErrorCallback;case"autoFocusNext":return autoFocusNext;case"el":return el;case"clickToPayConfig":return clickToPayConfig;case"clickToPayAttributes":return clickToPayAttributes;case"registerSingleIframe":return registerSingleIframe;case"registerIframes":return registerIframes;case"targets":return targets;case"actions":return _actions.actions;case"clickToPayIframe":return clickToPayIframe;case"assertClickToPayIsSet":return assertClickToPayIsSet;case"initIframe":return initIframe;case"initSingleIframe":return initSingleIframe;case"validateOrigin":return validateOrigin;case"responses":return responses;case"sendCallback":return sendCallback;case"recommendedExpandedHeight":return recommendedExpandedHeight;case"get":return get;case"iframeAllowPermissions":return iframeAllowPermissions;case"createIframeProxy":return createIframeProxy;case"handleOnLoad":return handleOnLoad;case"window":return window;case"eventHandler":return eventHandler;case"onLoadCounter":return onLoadCounter;case"createSingleIframeProxy":return createSingleIframeProxy;case"setup":return setup;case"reset":return reset;case"setClickToPayTransactionAmount":return setClickToPayTransactionAmount;case"clickToPayCheckout":return clickToPayCheckout}}function _assign__(e,t){var a=_getRewiredData__();return void 0===a[e]?_set_original__(e,t):a[e]=t}function _set_original__(e,t){switch(e){case"merchantId":return merchantId=t;case"renderMode":return renderMode=t;case"hostedfieldsurl":return hostedfieldsurl=t;case"fields":return fields=t;case"service":return service=t;case"styles":return styles=t;case"callback":return callback=t;case"onLoadCallback":return onLoadCallback=t;case"onCardBrandChangeCallback":return onCardBrandChangeCallback=t;case"onRequestIframeExpandCallback":return onRequestIframeExpandCallback=t;case"onCancelIframeExpandCallback":return onCancelIframeExpandCallback=t;case"onClickToPayCheckoutSuccessCallback":return onClickToPayCheckoutSuccessCallback=t;case"onClickToPayCheckoutErrorCallback":return onClickToPayCheckoutErrorCallback=t;case"autoFocusNext":return autoFocusNext=t;case"el":return el=t;case"clickToPayConfig":return clickToPayConfig=t;case"clickToPayAttributes":return clickToPayAttributes=t;case"targets":return targets=t;case"clickToPayIframe":return clickToPayIframe=t;case"responses":return responses=t;case"onLoadCounter":return onLoadCounter=t}}function _update_operation__(e,t,a){var r=_get__(t),e="++"===e?r+1:r-1;return _assign__(t,e),a?e:r}function _set__(t,e){var a=_getRewiredData__();return"object"===_typeof(t)?(Object.keys(t).forEach(function(e){a[e]=t[e]}),function(){Object.keys(t).forEach(function(e){_reset__(t)})}):(a[t]=void 0===e?INTENTIONAL_UNDEFINED:e,function(){_reset__(t)})}function _reset__(e){var t=_getRewiredData__();delete t[e],0==Object.keys(t).length&&delete _getRewireRegistry__()[_getRewireModuleId__]}function _with__(t){var a=_getRewiredData__(),r=Object.keys(t),n={};function _(){r.forEach(function(e){a[e]=n[e]})}return function(e){r.forEach(function(e){n[e]=a[e],a[e]=t[e]});e=e();return e&&"function"==typeof e.then?e.then(_).catch(_):_(),e}}(()=>{function e(e,t){Object.defineProperty(_RewireAPI__,e,{value:t,enumerable:!1,configurable:!0})}e("__get__",_get__),e("__GetDependency__",_get__),e("__Rewire__",_set__),e("__set__",_set__),e("__reset__",_reset__),e("__ResetDependency__",_reset__),e("__with__",_with__)})();var _default=exports.default=_RewireAPI__;
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
declare module "hosted-fields-sdk" {
|
|
2
|
+
export interface HostedFieldsConfig {
|
|
3
|
+
[key: string]: any;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export interface ClickToPayPayload {
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface ClickToPayTransactionAmount {
|
|
11
|
+
/**
|
|
12
|
+
* The transaction amount as a string.(e.g., "10")
|
|
13
|
+
*/
|
|
14
|
+
amount: string;
|
|
15
|
+
/**
|
|
16
|
+
* The currency code in ISO 4217 format. (e.g., "USD")
|
|
17
|
+
*/
|
|
18
|
+
currencyCode: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface HostedFields {
|
|
22
|
+
/**
|
|
23
|
+
* Initializes hosted fields with the provided configuration.
|
|
24
|
+
*/
|
|
25
|
+
setup(config: HostedFieldsConfig): void;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* If you want to get the encrypted values from the fields you can call this method.
|
|
29
|
+
* This will trigger the supplied callback-function registered in HostedFields.setup() to be called with the values for each field.
|
|
30
|
+
*/
|
|
31
|
+
get(): void;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* If you wish to reset the currently rendered iframes (fields) you can call HostedFields.reset() before running a new setup().
|
|
35
|
+
* This can be required if your page that contains the fields gets re-rendered. In that case you will have registered duplicates of the fields.
|
|
36
|
+
* So it's a good idea to call HostedFields.reset() on a beforeDestroy-hook if you are using Vue or React.
|
|
37
|
+
*/
|
|
38
|
+
reset(): void;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Updates the Click to Pay transaction amount.
|
|
42
|
+
*/
|
|
43
|
+
setClickToPayTransactionAmount(transactionAmount: any): void;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Initiates a Click to Pay checkout flow.
|
|
47
|
+
*/
|
|
48
|
+
clickToPayCheckout(payload: ClickToPayPayload): void;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Main HostedFields singleton/object exposed by the SDK.
|
|
53
|
+
*/
|
|
54
|
+
export const HostedFields: HostedFields;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The supported field types.
|
|
58
|
+
*/
|
|
59
|
+
export const FieldTypes: {
|
|
60
|
+
readonly TEXT: "TEXT";
|
|
61
|
+
readonly NUMBER: "NUMBER";
|
|
62
|
+
readonly CVV: "CVV";
|
|
63
|
+
readonly CREDITCARD_NUMBER: "CREDITCARD_NUMBER";
|
|
64
|
+
readonly EXPIRY_MM_YYYY: "EXPIRY_MM_YYYY";
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Represents a single hosted field configuration.
|
|
69
|
+
*/
|
|
70
|
+
export class Field {
|
|
71
|
+
/**
|
|
72
|
+
* The type of the field (e.g., TEXT, NUMBER, etc.).
|
|
73
|
+
*/
|
|
74
|
+
type: keyof typeof FieldTypes;
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* The HTML id of the field.
|
|
78
|
+
*/
|
|
79
|
+
id: string;
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* The name of the field (used as a key when retrieving hosted field data).
|
|
83
|
+
*/
|
|
84
|
+
name: string;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* The label text of the field.
|
|
88
|
+
*/
|
|
89
|
+
label: string;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Placeholder text to display inside the field.
|
|
93
|
+
*/
|
|
94
|
+
helpKey: string;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Error message to display if the field has validation issues.
|
|
98
|
+
*/
|
|
99
|
+
error: string;
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Whether the field should be visible (default: true).
|
|
103
|
+
*/
|
|
104
|
+
visible: boolean;
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Whether the field is required (default: true).
|
|
108
|
+
*/
|
|
109
|
+
required: boolean;
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* For backward compatibility: set to true to enable autofill (disables value formatting).
|
|
113
|
+
*/
|
|
114
|
+
noAttributeValueFormatting: boolean;
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* What autofill value the field should use (e.g., "cc-number", "cc-csc", "cc-exp").
|
|
118
|
+
*/
|
|
119
|
+
autocomplete: string;
|
|
120
|
+
|
|
121
|
+
constructor(
|
|
122
|
+
type: keyof typeof FieldTypes,
|
|
123
|
+
id: string,
|
|
124
|
+
name: string,
|
|
125
|
+
label: string,
|
|
126
|
+
helpKey?: string,
|
|
127
|
+
errorKey?: string,
|
|
128
|
+
visible?: boolean,
|
|
129
|
+
required?: boolean,
|
|
130
|
+
noAttributeValueFormatting?: boolean,
|
|
131
|
+
autocomplete?: string
|
|
132
|
+
);
|
|
133
|
+
}
|
|
134
|
+
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hosted-fields-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "Hosted fields sdk",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
|
+
"types": "index.d.ts",
|
|
6
7
|
"module": "dist/esm/index.js",
|
|
7
8
|
"exports": {
|
|
8
9
|
".": {
|
|
@@ -55,5 +56,9 @@
|
|
|
55
56
|
"homepage": "https://github.com/devcode-git/hosted-fields-sdk#readme",
|
|
56
57
|
"dependencies": {
|
|
57
58
|
"@babel/runtime": "^7.27.0"
|
|
59
|
+
},
|
|
60
|
+
"overrides": {
|
|
61
|
+
"pbkdf2": "3.1.3",
|
|
62
|
+
"sha.js": "2.4.12"
|
|
58
63
|
}
|
|
59
64
|
}
|