@primer-io/checkout-web 2.43.1 → 2.44.1
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/Checkout.css +1 -1
- package/dist/Primer.js +2 -2
- package/dist/index.d.ts +52 -5
- package/package.json +1 -1
package/dist/Checkout.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@keyframes PrimerCheckout__loadingSpinner{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes blink{0%,100%{opacity:1}50%{opacity:.5}}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}100%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.PrimerCheckout__title{padding:0;margin:0;font-size:1.15rem;color:#262626;font-weight:500}.PrimerCheckout__sceneElement{flex:0 0 auto}.PrimerCheckout__sceneElement:not(:last-child){margin-bottom:32px}.PrimerCheckout__divider{display:flex;flex-direction:row;align-items:center;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__divider>.PrimerCheckout__label{display:inline-block;margin:0px 10px}.PrimerCheckout__divider>.PrimerCheckout__dividerLineSegment{background-color:#e0e0e0;flex:1 1 auto;height:1px}.PrimerCheckout__divider--hidden{transform:translateY(-20px);opacity:0}.PrimerCheckout__textDivider{display:flex;align-items:center;text-align:center}.PrimerCheckout__textDivider::before,.PrimerCheckout__textDivider::after{display:block;content:"";flex:1;height:1px;background:#e0e0e0;min-width:16px}.PrimerCheckout__textDivider::before{margin-right:8px}@media(max-width: 600px){.PrimerCheckout__textDivider::before{margin-right:2px}}.PrimerCheckout__textDivider::after{margin-left:8px}@media(max-width: 600px){.PrimerCheckout__textDivider::after{margin-left:2px}}.PrimerCheckout__apmButton{position:relative;display:flex;align-items:stretch;justify-content:center;overflow:hidden;transition:opacity 300ms cubic-bezier(0.4, 0, 0.2, 1)}.PrimerCheckout__apmButton button{cursor:pointer;width:100%;border:none}.PrimerCheckout__apmButton:focus-within{outline:2px solid #3447f4;outline-offset:2px}.PrimerCheckout__apmButton:not(:first-of-type){margin-top:8px}.PrimerCheckout__apmButton>.paypal-buttons{transition:none !important}.PrimerCheckout__apmButton--logo{border-width:1px;border-style:solid}.PrimerCheckout__apmButton--logo:hover{opacity:.8}.PrimerCheckout__apmButton--logo img{max-height:100%;max-width:calc(100% - 8px)}#primer-checkout-apm-googlePay{height:auto;min-height:40px}.PrimerCheckout__separator{margin:32px 0px;height:1px;background:#e0e0e0}.PrimerCheckout__emptyText{transform:translateY(0px);opacity:1;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__emptyText.PrimerCheckout--exit{transform:transalteY(-20px);opacity:0}.PrimerCheckout__cardTypes{width:-moz-fit-content;width:fit-content;display:flex}.PrimerCheckout__hostedInputContent{display:flex;flex-direction:row;position:absolute;top:50%;transform:translateY(-50%);overflow:hidden;pointer-events:none;right:12px;height:100%;padding:11px 0px;align-items:center}.PrimerCheckout__cardType{position:relative;width:24px;height:100%;transition:all 300ms cubic-bezier(0.4, 0, 0.2, 1),opacity 300ms cubic-bezier(0.4, 0, 0.2, 1)}.PrimerCheckout__cardType>*{width:100%;height:100%;object-fit:contain;object-position:center}.PrimerCheckout__cardType.PrimerCheckout--hidden{display:inline-block !important;width:0px;margin-right:0px;opacity:0}.PrimerCheckout__cardType.PrimerCheckout--error::after{content:"";position:absolute;right:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background-color:#ea4335}.PrimerCheckout__form{display:flex;flex-direction:column}.PrimerCheckout__formHeader{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:32px}.PrimerCheckout__formField{position:relative;flex:0}.PrimerCheckout__formField.PrimerCheckout__formField--dual{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{flex:0 1 calc(50% - 8px)}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{margin-top:0px}@media(max-width: 600px){.PrimerCheckout__formField.PrimerCheckout__formField--dual{display:flex;flex-direction:column;align-items:initial}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{flex:unset}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField+.PrimerCheckout__formField{margin-top:inherit}}.PrimerCheckout__formField.PrimerCheckout__formField--orientation-horizontal{display:flex;flex-direction:row;align-items:center}.PrimerCheckout__formField>.PrimerCheckout__label{display:inline-block;margin-left:1px}.PrimerCheckout__formField .PrimerCheckout__checkbox+.PrimerCheckout__label{cursor:pointer;margin-left:8px}.PrimerCheckout__helperText{position:relative;z-index:0;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms;transform:translateY(-20px);opacity:0}.PrimerCheckout__helperText.PrimerCheckout--enter{transform:translateY(-20px);opacity:0;margin-top:0px;animation:none}.PrimerCheckout__helperText.PrimerCheckout--entering{transform:translateY(0px);opacity:1}.PrimerCheckout__helperText.PrimerCheckout--entered{opacity:1;transform:translateY(0px)}.PrimerCheckout__helperText.PrimerCheckout--exit{opacity:1;animation:none}.PrimerCheckout__helperText.PrimerCheckout--exiting{opacity:0;transform:translateY(-20px)}.PrimerCheckout__formFieldTitle{display:flex;align-items:center}.PrimerCheckout__checkbox{-webkit-appearance:none;font-size:1rem;cursor:pointer;margin:0px;padding:8px;display:inline-block;position:relative;color:#fff;border-radius:4px;border:1px solid #bdbdbd}.PrimerCheckout__checkbox:checked{color:#fff;background-color:#3447f4;border-color:#3447f4}.PrimerCheckout__checkbox::after{content:"✓";font-size:16px;position:absolute;top:50%;left:55%;transform:translate(-50%, -50%)}#primer-checkout-vault-methods{opacity:1;transform-origin:top center;transform:translateY(0px);transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1)}#primer-checkout-vault-methods.PrimerCheckout--exit{opacity:0;transform:translateY(-100px)}.PrimerCheckout__dropDownMenu{border:1px solid #e0e0e0;border-radius:2px;display:flex;flex-direction:column;position:absolute;z-index:1000;top:0px;right:0px;width:100%;background-color:#fff;box-shadow:0px 1px 10px rgba(0,0,0,.1),0px 0px 20px rgba(52,71,244,.1);opacity:0;transform-origin:top center;transform:translateY(-10px) scaleY(0.9);transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms;pointer-events:none}.PrimerCheckout__dropDownMenu>.PrimerCheckout__label{padding:12px 12px 6px}.PrimerCheckout__dropDownMenu--enter{pointer-events:all;opacity:1;transform:translateY(0px) scaleY(1)}.PrimerCheckout__dropDownMenuItem{transition:background-color 100ms ease;padding:6px 12px}.PrimerCheckout__dropDownMenuItem:hover,.PrimerCheckout__dropDownMenuItem:focus{background-color:#eaf1ff}.PrimerCheckout__dropDownMenuItem>.PrimerCheckout__label{white-space:nowrap;color:#3447f4}.PrimerCheckout__paymentMethodDropDownMenuItem{margin:0px 16px;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__paymentMethodDropDownMenuItem:not(:last-child){border-bottom:1px solid #e0e0e0}.PrimerCheckout__paymentMethodDropDownMenuItem--disabled{pointer-events:none;opacity:.3}.PrimerCheckout__paymentMethodDropDownMenuItem__content{display:flex;flex-direction:row;align-items:center;padding:16px 0px}.PrimerCheckout__paymentMethodDropDownMenuItem__label.PrimerCheckout__label{min-width:0;margin-right:8px;font-size:.75rem;word-break:break-all}.PrimerCheckout__paymentMethodDropDownMenuItem__confirmationContainer{pointer-events:none;position:relative;height:0;padding-bottom:0px;opacity:0;transform:translateY(-20px);transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms,opacity cubic-bezier(0.4, 0, 0.2, 1) 200ms}.PrimerCheckout__paymentMethodDropDownMenuItem__confirmationContainer--enter{pointer-events:all;transform:translateY(0px);height:calc(40px + 16px);opacity:1;padding-bottom:16px}.PrimerCheckout__deleteButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4}.PrimerCheckout__deleteButton:disabled{cursor:auto}.PrimerCheckout__deleteConfirmation{height:30px}.PrimerCheckout__confirmButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;display:grid;width:100%;place-items:center;height:40px;border:1px solid #3447f4;border-radius:4px;text-align:center;color:#3447f4;font-size:.875rem}.PrimerCheckout__confirmButton:disabled{cursor:auto}.PrimerCheckout__savedPaymentMethods{display:flex;flex-direction:column}.PrimerCheckout__savedPaymentMethods__title{display:flex;flex-direction:row;align-items:center;margin-bottom:15px}button.PrimerCheckout__klarnaButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;border:1px solid #e0e0e0;border-radius:2px;display:inline-flex;place-content:center;align-items:center;cursor:pointer;width:100%;background-color:#ffb3c7;border-radius:4px}button.PrimerCheckout__klarnaButton:disabled{cursor:auto}button.PrimerCheckout__klarnaButton:enabled:hover{opacity:.7}button.PrimerCheckout__klarnaButton>span{font-weight:600}button.PrimerCheckout__klarnaButton:disabled{color:inherit}.PrimerCheckout__klarnaPaymentOptions{width:100%;position:relative;overflow:hidden;transition:height 200ms ease-in-out;padding:0px 64px}.PrimerCheckout__klarnaPaymentCategory{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;border:1px solid #e0e0e0;border-radius:2px;display:grid;grid-auto-flow:column;place-content:center;align-items:center;padding:8px 0px}.PrimerCheckout__klarnaPaymentCategory:disabled{cursor:auto}.PrimerCheckout__klarnaPaymentCategory>img{margin-right:12px}.PrimerCheckout__klarnaPaymentCategory:first-child{margin-top:20px}.PrimerCheckout__klarnaPaymentCategory+.PrimerCheckout__klarnaPaymentCategory{margin-top:12px}.PrimerCheckout__klarnaPaymentOptionButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;padding:6px 12px;width:100%;display:flex;align-items:center}.PrimerCheckout__klarnaPaymentOptionButton:disabled{cursor:auto}.PrimerCheckout__klarnaPaymentOptionButton>img{margin-right:12px}.PrimerCheckout__processingIndicatorOverlay{pointer-events:none;position:absolute;top:0px;left:0px;right:0px;bottom:0px;z-index:100;display:grid;place-items:center;transition:transform 500ms cubic-bezier(0.4, 0, 0.2, 1),opacity 300ms linear;opacity:0;transform:translateY(50px)}.PrimerCheckout__processingIndicatorOverlay.PrimerCheckout--entering,.PrimerCheckout__processingIndicatorOverlay.PrimerCheckout--entered{opacity:1;transform:translateY(0px)}.PrimerCheckout__processingIndicatorContainer{padding:32px}.PrimerCheckout__check{padding:0px 16px;align-items:center;justify-content:center;text-align:center;min-height:18rem}.PrimerCheckout__checkMarkIcon{width:3rem;padding-bottom:20px}#primer-checkout-scene-credit-card-form{padding-bottom:32px}#primer-checkout-bancontact-scene-credit-card-form{padding-bottom:32px}.PrimerCheckout__creditCardButton_icon{height:81%}.PrimerCheckout__surcharge{background:#242a2f08;border-radius:5px;display:flex;flex-direction:column;gap:4px;padding:5px;margin-top:15px}.PrimerCheckout__surcharge>.PrimerCheckout__label{text-align:right}.PrimerCheckout{box-sizing:border-box;background-color:transparent;position:relative;display:flex;flex-direction:column}.PrimerCheckout *[hidden=true]{display:none}.PrimerCheckout dialog{margin:0;padding:0}.PrimerCheckout input{outline-color:#3447f4}.PrimerCheckout div{box-sizing:border-box}.PrimerCheckout--hidden{display:none !important}.PrimerCheckout--exited{display:none}.PrimerCheckout--centered{text-align:center}.PrimerCheckout--loading #primer-checkout-payment-method-scene{pointer-events:none}.PrimerCheckout__scene{display:flex;flex-direction:column;position:relative;left:0;top:0;opacity:1}.PrimerCheckout__modalBody{display:grid;place-content:center;background-color:#fff;border-radius:3px;position:relative;box-shadow:1px 1px 5px 3px rgba(0,0,0,.05);overflow:hidden}.PrimerCheckout__modalBody>iframe{position:absolute;left:0px;top:0px;right:0px;bottom:0px;width:100%;height:100%}.PrimerCheckout__scene--3dsModal{position:fixed;top:0px;left:0px;right:0px;bottom:0px;z-index:101;width:100%;height:100% !important;display:grid;place-content:center;background-color:rgba(0,0,0,.2);transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);opacity:0}.PrimerCheckout__scene--3dsModal>.PrimerCheckout__modalBody{transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);opacity:0;transform:translateY(100vh)}.PrimerCheckout__scene--3dsModal.PrimerCheckout--enter{opacity:1}.PrimerCheckout__scene--3dsModal.PrimerCheckout--enter>.PrimerCheckout__modalBody{opacity:1;transform:translateY(0vh)}#primer-checkout-scene-vault{padding-bottom:32px}#primer-checkout-other-payment-methods{height:0px;width:0px;opacity:0;transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);visibility:hidden}#primer-checkout-other-payment-methods>*:last-child{height:32px}#primer-checkout-other-payment-methods.PrimerCheckout--entering,#primer-checkout-other-payment-methods.PrimerCheckout--entered{width:auto;opacity:1;visibility:visible}#primer-checkout-payment-method-divider{opacity:1;transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1)}#primer-checkout-payment-method-divider.PrimerCheckout--exit{opacity:0;height:0px;margin-bottom:0px}
|
|
1
|
+
@keyframes PrimerCheckout__loadingSpinner{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes blink{0%,100%{opacity:1}50%{opacity:.5}}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}100%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.PrimerCheckout__title{padding:0;margin:0;font-size:1.15rem;color:#262626;font-weight:500}.PrimerCheckout__sceneElement{flex:0 0 auto}.PrimerCheckout__sceneElement:not(:last-child){margin-bottom:32px}.PrimerCheckout__divider{display:flex;flex-direction:row;align-items:center;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__divider>.PrimerCheckout__label{display:inline-block;margin:0px 10px}.PrimerCheckout__divider>.PrimerCheckout__dividerLineSegment{background-color:#e0e0e0;flex:1 1 auto;height:1px}.PrimerCheckout__divider--hidden{transform:translateY(-20px);opacity:0}.PrimerCheckout__textDivider{display:flex;align-items:center;text-align:center}.PrimerCheckout__textDivider::before,.PrimerCheckout__textDivider::after{display:block;content:"";flex:1;height:1px;background:#e0e0e0;min-width:16px}.PrimerCheckout__textDivider::before{margin-right:8px}@media(max-width: 600px){.PrimerCheckout__textDivider::before{margin-right:2px}}.PrimerCheckout__textDivider::after{margin-left:8px}@media(max-width: 600px){.PrimerCheckout__textDivider::after{margin-left:2px}}.PrimerCheckout__apmButton{position:relative;display:flex;align-items:stretch;justify-content:center;overflow:hidden;transition:opacity 300ms cubic-bezier(0.4, 0, 0.2, 1)}.PrimerCheckout__apmButton button{cursor:pointer;width:100%;border:none}.PrimerCheckout__apmButton:focus-within{outline:2px solid #3447f4;outline-offset:2px}.PrimerCheckout__apmButton:not(:first-of-type){margin-top:8px}.PrimerCheckout__apmButton>.paypal-buttons{transition:none !important}.PrimerCheckout__apmButton--logo{border-width:1px;border-style:solid}.PrimerCheckout__apmButton--logo:hover{opacity:.8}.PrimerCheckout__apmButton--logo img{max-height:100%;max-width:calc(100% - 8px)}.PrimerCheckout__apmButton span{font-size:.833rem}#primer-checkout-apm-googlePay{height:auto;min-height:40px}.PrimerCheckout__separator{margin:32px 0px;height:1px;background:#e0e0e0}.PrimerCheckout__emptyText{transform:translateY(0px);opacity:1;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__emptyText.PrimerCheckout--exit{transform:transalteY(-20px);opacity:0}.PrimerCheckout__cardTypes{width:-moz-fit-content;width:fit-content;display:flex}.PrimerCheckout__hostedInputContent{display:flex;flex-direction:row;position:absolute;top:50%;transform:translateY(-50%);overflow:hidden;pointer-events:none;right:12px;height:100%;padding:11px 0px;align-items:center}.PrimerCheckout__cardType{position:relative;width:24px;height:100%;transition:all 300ms cubic-bezier(0.4, 0, 0.2, 1),opacity 300ms cubic-bezier(0.4, 0, 0.2, 1)}.PrimerCheckout__cardType>*{width:100%;height:100%;object-fit:contain;object-position:center}.PrimerCheckout__cardType.PrimerCheckout--hidden{display:inline-block !important;width:0px;margin-right:0px;opacity:0}.PrimerCheckout__cardType.PrimerCheckout--error::after{content:"";position:absolute;right:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background-color:#ea4335}.PrimerCheckout__form{display:flex;flex-direction:column}.PrimerCheckout__formHeader{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:32px}.PrimerCheckout__formField{position:relative;flex:0}.PrimerCheckout__formField.PrimerCheckout__formField--dual{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{flex:0 1 calc(50% - 8px)}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{margin-top:0px}@media(max-width: 600px){.PrimerCheckout__formField.PrimerCheckout__formField--dual{display:flex;flex-direction:column;align-items:initial}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField{flex:unset}.PrimerCheckout__formField.PrimerCheckout__formField--dual>.PrimerCheckout__formField+.PrimerCheckout__formField{margin-top:inherit}}.PrimerCheckout__formField.PrimerCheckout__formField--orientation-horizontal{display:flex;flex-direction:row;align-items:center}.PrimerCheckout__formField>.PrimerCheckout__label{display:inline-block;margin-left:1px}.PrimerCheckout__formField .PrimerCheckout__checkbox+.PrimerCheckout__label{cursor:pointer;margin-left:8px}.PrimerCheckout__helperText{position:relative;z-index:0;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms;transform:translateY(-20px);opacity:0}.PrimerCheckout__helperText.PrimerCheckout--enter{transform:translateY(-20px);opacity:0;margin-top:0px;animation:none}.PrimerCheckout__helperText.PrimerCheckout--entering{transform:translateY(0px);opacity:1}.PrimerCheckout__helperText.PrimerCheckout--entered{opacity:1;transform:translateY(0px)}.PrimerCheckout__helperText.PrimerCheckout--exit{opacity:1;animation:none}.PrimerCheckout__helperText.PrimerCheckout--exiting{opacity:0;transform:translateY(-20px)}.PrimerCheckout__formFieldTitle{display:flex;align-items:center}.PrimerCheckout__checkbox{-webkit-appearance:none;font-size:1rem;cursor:pointer;margin:0px;padding:8px;display:inline-block;position:relative;color:#fff;border-radius:4px;border:1px solid #bdbdbd}.PrimerCheckout__checkbox:checked{color:#fff;background-color:#3447f4;border-color:#3447f4}.PrimerCheckout__checkbox::after{content:"✓";font-size:16px;position:absolute;top:50%;left:55%;transform:translate(-50%, -50%)}#primer-checkout-vault-methods{opacity:1;transform-origin:top center;transform:translateY(0px);transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1)}#primer-checkout-vault-methods.PrimerCheckout--exit{opacity:0;transform:translateY(-100px)}.PrimerCheckout__dropDownMenu{border:1px solid #e0e0e0;border-radius:2px;display:flex;flex-direction:column;position:absolute;z-index:1000;top:0px;right:0px;width:100%;background-color:#fff;box-shadow:0px 1px 10px rgba(0,0,0,.1),0px 0px 20px rgba(52,71,244,.1);opacity:0;transform-origin:top center;transform:translateY(-10px) scaleY(0.9);transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms;pointer-events:none}.PrimerCheckout__dropDownMenu>.PrimerCheckout__label{padding:12px 12px 6px}.PrimerCheckout__dropDownMenu--enter{pointer-events:all;opacity:1;transform:translateY(0px) scaleY(1)}.PrimerCheckout__dropDownMenuItem{transition:background-color 100ms ease;padding:6px 12px}.PrimerCheckout__dropDownMenuItem:hover,.PrimerCheckout__dropDownMenuItem:focus{background-color:#eaf1ff}.PrimerCheckout__dropDownMenuItem>.PrimerCheckout__label{white-space:nowrap;color:#3447f4}.PrimerCheckout__paymentMethodDropDownMenuItem{margin:0px 16px;transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms}.PrimerCheckout__paymentMethodDropDownMenuItem:not(:last-child){border-bottom:1px solid #e0e0e0}.PrimerCheckout__paymentMethodDropDownMenuItem--disabled{pointer-events:none;opacity:.3}.PrimerCheckout__paymentMethodDropDownMenuItem__content{display:flex;flex-direction:row;align-items:center;padding:16px 0px}.PrimerCheckout__paymentMethodDropDownMenuItem__label.PrimerCheckout__label{min-width:0;margin-right:8px;font-size:.75rem;word-break:break-all}.PrimerCheckout__paymentMethodDropDownMenuItem__confirmationContainer{pointer-events:none;position:relative;height:0;padding-bottom:0px;opacity:0;transform:translateY(-20px);transition:all cubic-bezier(0.4, 0, 0.2, 1) 300ms,opacity cubic-bezier(0.4, 0, 0.2, 1) 200ms}.PrimerCheckout__paymentMethodDropDownMenuItem__confirmationContainer--enter{pointer-events:all;transform:translateY(0px);height:calc(40px + 16px);opacity:1;padding-bottom:16px}.PrimerCheckout__deleteButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4}.PrimerCheckout__deleteButton:disabled{cursor:auto}.PrimerCheckout__deleteConfirmation{height:30px}.PrimerCheckout__confirmButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;display:grid;width:100%;place-items:center;height:40px;border:1px solid #3447f4;border-radius:4px;text-align:center;color:#3447f4;font-size:.875rem}.PrimerCheckout__confirmButton:disabled{cursor:auto}.PrimerCheckout__savedPaymentMethods{display:flex;flex-direction:column}.PrimerCheckout__savedPaymentMethods__title{display:flex;flex-direction:row;align-items:center;margin-bottom:15px}button.PrimerCheckout__klarnaButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;border:1px solid #e0e0e0;border-radius:2px;display:inline-flex;place-content:center;align-items:center;cursor:pointer;width:100%;background-color:#ffb3c7;border-radius:4px}button.PrimerCheckout__klarnaButton:disabled{cursor:auto}button.PrimerCheckout__klarnaButton:enabled:hover{opacity:.7}button.PrimerCheckout__klarnaButton>span{font-weight:600}button.PrimerCheckout__klarnaButton:disabled{color:inherit}.PrimerCheckout__klarnaPaymentOptions{width:100%;position:relative;overflow:hidden;transition:height 200ms ease-in-out;padding:0px 64px}.PrimerCheckout__klarnaPaymentCategory{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;border:1px solid #e0e0e0;border-radius:2px;display:grid;grid-auto-flow:column;place-content:center;align-items:center;padding:8px 0px}.PrimerCheckout__klarnaPaymentCategory:disabled{cursor:auto}.PrimerCheckout__klarnaPaymentCategory>img{margin-right:12px}.PrimerCheckout__klarnaPaymentCategory:first-child{margin-top:20px}.PrimerCheckout__klarnaPaymentCategory+.PrimerCheckout__klarnaPaymentCategory{margin-top:12px}.PrimerCheckout__klarnaPaymentOptionButton{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;font-family:inherit;outline-offset:2px;outline-color:#3447f4;padding:6px 12px;width:100%;display:flex;align-items:center}.PrimerCheckout__klarnaPaymentOptionButton:disabled{cursor:auto}.PrimerCheckout__klarnaPaymentOptionButton>img{margin-right:12px}.PrimerCheckout__processingIndicatorOverlay{pointer-events:none;position:absolute;top:0px;left:0px;right:0px;bottom:0px;z-index:100;display:grid;place-items:center;transition:transform 500ms cubic-bezier(0.4, 0, 0.2, 1),opacity 300ms linear;opacity:0;transform:translateY(50px)}.PrimerCheckout__processingIndicatorOverlay.PrimerCheckout--entering,.PrimerCheckout__processingIndicatorOverlay.PrimerCheckout--entered{opacity:1;transform:translateY(0px)}.PrimerCheckout__processingIndicatorContainer{padding:32px}.PrimerCheckout__check{padding:0px 16px;align-items:center;justify-content:center;text-align:center;min-height:18rem}.PrimerCheckout__checkMarkIcon{width:3rem;padding-bottom:20px}#primer-checkout-scene-credit-card-form{padding-bottom:32px}#primer-checkout-bancontact-scene-credit-card-form{padding-bottom:32px}.PrimerCheckout__creditCardButton_icon{height:81%}.PrimerCheckout__surcharge{background:#242a2f08;border-radius:5px;display:flex;flex-direction:column;gap:4px;padding:5px;margin-top:15px}.PrimerCheckout__surcharge>.PrimerCheckout__label{text-align:right}.PrimerCheckout{box-sizing:border-box;background-color:transparent;position:relative;display:flex;flex-direction:column}.PrimerCheckout *[hidden=true]{display:none}.PrimerCheckout dialog{margin:0;padding:0}.PrimerCheckout input{outline-color:#3447f4}.PrimerCheckout div{box-sizing:border-box}.PrimerCheckout--hidden{display:none !important}.PrimerCheckout--exited{display:none}.PrimerCheckout--centered{text-align:center}.PrimerCheckout--loading #primer-checkout-payment-method-scene{pointer-events:none}.PrimerCheckout__scene{display:flex;flex-direction:column;position:relative;left:0;top:0;opacity:1}.PrimerCheckout__modalBody{display:grid;place-content:center;background-color:#fff;border-radius:3px;position:relative;box-shadow:1px 1px 5px 3px rgba(0,0,0,.05);overflow:hidden}.PrimerCheckout__modalBody>iframe{position:absolute;left:0px;top:0px;right:0px;bottom:0px;width:100%;height:100%}.PrimerCheckout__scene--3dsModal{position:fixed;top:0px;left:0px;right:0px;bottom:0px;z-index:101;width:100%;height:100% !important;display:grid;place-content:center;background-color:rgba(0,0,0,.2);transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);opacity:0}.PrimerCheckout__scene--3dsModal>.PrimerCheckout__modalBody{transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);opacity:0;transform:translateY(100vh)}.PrimerCheckout__scene--3dsModal.PrimerCheckout--enter{opacity:1}.PrimerCheckout__scene--3dsModal.PrimerCheckout--enter>.PrimerCheckout__modalBody{opacity:1;transform:translateY(0vh)}#primer-checkout-scene-vault{padding-bottom:32px}#primer-checkout-other-payment-methods{height:0px;width:0px;opacity:0;transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1);visibility:hidden}#primer-checkout-other-payment-methods>*:last-child{height:32px}#primer-checkout-other-payment-methods.PrimerCheckout--entering,#primer-checkout-other-payment-methods.PrimerCheckout--entered{width:auto;opacity:1;visibility:visible}#primer-checkout-payment-method-divider{opacity:1;transition:all 500ms cubic-bezier(0.4, 0, 0.2, 1)}#primer-checkout-payment-method-divider.PrimerCheckout--exit{opacity:0;height:0px;margin-bottom:0px}
|
package/dist/Primer.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(U,s){typeof exports=="object"&&typeof module=="object"?module.exports=s():typeof define=="function"&&define.amd?define([],s):typeof exports=="object"?exports.Primer=s():U.Primer=s()})(this,()=>(()=>{var W={476:()=>{},962:()=>{},473:()=>{}},U={};function s(a){var O=U[a];if(O!==void 0)return O.exports;var D=U[a]={exports:{}};return W[a](D,D.exports,s),D.exports}s.d=(a,O)=>{for(var D in O)s.o(O,D)&&!s.o(a,D)&&Object.defineProperty(a,D,{enumerable:!0,get:O[D]})},s.o=(a,O)=>Object.prototype.hasOwnProperty.call(a,O),s.r=a=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})};var w={};return(()=>{"use strict";s.r(w),s.d(w,{CheckoutUXFlow:()=>Ir,ErrorCode:()=>gr,EventTypes:()=>br,HeadlessManagerType:()=>vr,PaymentFlow:()=>lr,PaymentInstrumentType:()=>Ur,PaymentMethodData:()=>$t.PaymentMethodData,PaymentMethodType:()=>V,Primer:()=>jt,SuccessScreenType:()=>wr,ThreeDSecureStatus:()=>Mr,TokenType:()=>hr,preloadPrimer:()=>Ft});const a=8,O=100,D=100,xr=r=>new Promise(t=>setTimeout(t,r));function Hr(r){return{enabled:r?.enabled??!1,maxRetries:a,initialBackoff:O,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:D}}function pr(r,t,e){const o=r*Math.pow(2,t-1),A=Math.random()*e;return Math.min(o+A,Number.MAX_SAFE_INTEGER)}async function m(r,t,e,o,A=xr){let _=0;const E=Hr(t);if(!E.enabled)return r();for(;;)try{const i=await r();return o&&o(),i}catch(i){const n=i,T=_>=E.maxRetries,R=n.isNetworkError&&!E.retryNetworkErrors,N=n.status&&n.status>=500&&!E.retry500Errors;if(T||R||N){let d=`Failed after ${_} retries. `;throw T?d+=`Reached maximum retries (${E.maxRetries}).`:R?d+="Network error encountered and retryNetworkErrors is disabled.":N&&(d+="HTTP 500 error encountered and retry500Errors is disabled."),d+=` Last error: ${n.message}`,e&&e(d),new Error(d,{cause:i})}_++;const C=pr(E.initialBackoff,_,E.maxJitter);let M="Unknown error";n.isNetworkError?M="Network error":n.status&&(M=`HTTP ${n.status} error`),e&&e(`Retry attempt ${_}/${E.maxRetries} due to: ${M}. Error details: ${n.message}. Waiting for ${C.toFixed(2)}ms before next attempt.`),await A(C)}}function Fr(r,t){const e=document.createElement(r);return Object.entries(t).forEach(([o,A])=>e.setAttribute(o,A)),e}function $(r,t,e){return document.querySelector(`${r}[${t}^="${e}"]`)}async function j(r,t,e,o,A,_){const{logger:E,retryConfig:i}=_;await m(()=>new Promise((T,R)=>{const N=$(r,e,t)||Fr(r,{...o,[e]:t});N.onload=()=>{E?.(`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${t}`),T()},N.onerror=()=>{N.remove(),R(new Error(`${A}: ${t}`))},N.parentNode||document.head.appendChild(N)}),i,E)}function Gr(r,t={}){return $("script","src",r)&&window.__Primer?(t.logger?.("Script already loaded"),Promise.resolve()):j("script",r,"src",{...t.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",t)}function Kr(r,t={}){return Array.from(document.styleSheets).some(e=>e.href===r)?(t.logger?.("Stylesheet already loaded"),Promise.resolve()):j("link",r,"href",{...t.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",t)}let S;async function X(r){return S||(S=Promise.all([Gr("https://sdk.primer.io/web/v2.43.1/PrimerCoreSDK.min.js",{logger:o=>{r?.sdkFunctionEvent({name:"loadPrimerScript",params:[o]})}}),Kr("https://sdk.primer.io/web/v2.43.1/Checkout.css",{logger:o=>{r?.sdkFunctionEvent({name:"loadPrimerCss",params:[o]})}})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw S=void 0,o}),S)}var Xt=s(476),zt=s(962),b=(r=>(r.REQUEST_START="REQUEST_START",r.REQUEST_END="REQUEST_END",r))(b||{}),Vr=(r=>(r.START="START",r.END="END",r))(Vr||{}),P=(r=>(r.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",r.CRASH_EVENT="CRASH_EVENT",r.TIMER_EVENT="TIMER_EVENT",r.MESSAGE_EVENT="MESSAGE_EVENT",r.V1_EVENT="V1_EVENT",r.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",r))(P||{});const Wr={get(r,t){let e;try{switch(r){case"PRIMER_SDK_VERSION":e="v2.43.1";break;case"PRIMER_ASSETS_URL":e=process.env.PRIMER_ASSETS_URL;break;case"PRIMER_CORE_API_URL":e=process.env.PRIMER_CORE_API_URL;break;case"PRIMER_PCI_API_URL":e=process.env.PRIMER_PCI_API_URL;break;case"PRIMER_MODULES_URL":e=process.env.PRIMER_MODULES_URL;break;case"PRIMER_BUILD_INTEGRATION_BUILDER":e=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;case"SENTRY_DSN":e=process.env.SENTRY_DSN;break;default:break}}catch{}return e||t}};var mr=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(mr||{});async function $r(){if(typeof navigator>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},platformVersion:navigator.platform,userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const jr="WEB",Xr=Wr.get("PRIMER_SDK_VERSION");async function zr(r,t,e){return{...e,createdAt:Date.now(),device:await $r(),eventType:r,properties:t,sdkVersion:Xr,sdkType:jr}}const z="https://analytics.production.data.primer.io/sdk-logs",Qr=z==="https://analytics.sandbox.data.primer.io/playwright",Q=1024*5,Zr=500,h=new Map,f=new Map;function v({url:r=z,...t}={}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Z(r,!0)});const e=o=>async A=>{if(typeof navigator>"u")return;const _=await zr(o,A,t),E=n=>qr(yr(n));if(Qr)return;const i=J(_,E);Jr(r,i)};return{crashEvent:e(P.CRASH_EVENT),messageEvent:e(P.MESSAGE_EVENT),networkCallEvent:e(P.NETWORK_CALL_EVENT),sdkFunctionEvent:e(P.SDK_FUNCTION_EVENT),timerEvent:e(P.TIMER_EVENT),v1Event:e(P.V1_EVENT)}}function Z(r,t=!1){if(h.has(r)){const A=h.get(r);clearTimeout(A),h.delete(r)}const e=()=>{const A=f.get(r);if(A?.length){try{navigator.sendBeacon(r,JSON.stringify(A))}catch(_){console.error("Unable to access navigator",_)}f.delete(r)}};if(t){e();return}const o=setTimeout(e,Zr);h.set(r,o)}function Jr(r,t){f.has(r)||f.set(r,[]),f.get(r)?.push(t),Z(r)}function J(r,t){const e=o=>typeof o=="object"&&o!==null?J(o,t):t(o);return Array.isArray(r)?r.map(e):Object.fromEntries(Object.entries(r).map(([o,A])=>[o,e(A)]))}function qr(r){return typeof r=="string"&&r.length>Q?`${r.slice(0,Q)}...`:r}function yr(r){return typeof r=="function"?r.name||"function":r}class x{constructor(t,e){this.type=t,this.displayName=e}get specs(){return this.constructor.specs}setOption(t,e){this.options&&(this.options[t]=e)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(t){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(t){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}x.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},x.create=(r,t,e,o)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class rt extends x{async tokenize(t){}}class tt{get session(){const t=this.store.getState().clientSessionInfo;if(!t)throw new Error("Client Context Session does not exist");return t}}const et=[Array,rt,tt,Map,Set];function ot(r){const t=new Set,e=20;let o=0;for(;o++<e&&r&&r!==Object.prototype;)Object.getOwnPropertyNames(r).forEach(A=>t.add(A)),r=Object.getPrototypeOf(r);return[...t]}function q(r,t,e,o,A){if(!e||et.some(_=>e instanceof _))return e;switch(typeof e){case"function":return new Proxy(e,{apply(_,E,i=[]){const n={name:t.replace(/^bound /,""),params:i,module:A};r?.sdkFunctionEvent(n);const T=i.map((R,N)=>q(r,`${N}`,R,o,[A,t,`${N}`].filter(Boolean).join(".")));return _.apply(E,T)}});case"object":return e===o?e:At(r,e,[A,t].filter(Boolean).join("."));default:return e}}function At(r,t,e){return Object.fromEntries(ot(t).map(o=>{const A=t?.[o],_=q(r,o,A,A,e);return[o,_]}))}const y=()=>rr.randomUUID?.()||_t(),_t=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^Et()>>r/4).toString(16)),Et=()=>(rr.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,rr=typeof crypto<"u"?crypto:{},it=new Set(["post","get","delete"]),nt=new Set(["post"]);function ct(r,t,e,o){const A=nt.has(r);return{method:r,options:A?o:e,body:A?e:void 0,url:t}}function Qt(r,t){const e=({prop:o})=>({apply:async(A,_,E=[])=>{const i=ct(o.toString(),...E);if(i.options?.isAnalytics)return A.apply(_,E);const n=uuid();t?.networkCallEvent(prepareNetworkEventProps(n,i));const T=Date.now(),R=await A.apply(_,E),C=Date.now()-T;return t?.networkCallEvent(prepareNetworkEventProps(n,i,R,C)),R}});return new Proxy(r,{get(o,A){const _=o[A];return typeof _=="function"&&it.has(A)?new Proxy(_,e({prop:A})):_}})}const H=(r,t,e,o)=>({callType:e?b.REQUEST_END:b.REQUEST_START,id:r,errorBody:e?.error&&JSON.stringify(e.error),method:t.method,responseCode:e?.status,url:t.url,duration:o}),tr="3.6.1",st=tr,at=typeof atob=="function",Nt=typeof btoa=="function",L=typeof Buffer=="function",er=typeof TextDecoder=="function"?new TextDecoder:void 0,or=typeof TextEncoder=="function"?new TextEncoder:void 0,I=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],B=(r=>{let t={};return r.forEach((e,o)=>t[e]=o),t})(I),Rt=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,c=String.fromCharCode.bind(String),Ar=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,t=e=>e)=>new Uint8Array(Array.prototype.slice.call(r,0).map(t)),_r=r=>r.replace(/[+\/]/g,t=>t=="+"?"-":"_").replace(/=+$/m,""),Er=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),ir=r=>{let t,e,o,A,_="";const E=r.length%3;for(let i=0;i<r.length;){if((e=r.charCodeAt(i++))>255||(o=r.charCodeAt(i++))>255||(A=r.charCodeAt(i++))>255)throw new TypeError("invalid character found");t=e<<16|o<<8|A,_+=I[t>>18&63]+I[t>>12&63]+I[t>>6&63]+I[t&63]}return E?_.slice(0,E-3)+"===".substring(E):_},p=Nt?r=>btoa(r):L?r=>Buffer.from(r,"binary").toString("base64"):ir,F=L?r=>Buffer.from(r).toString("base64"):r=>{let e=[];for(let o=0,A=r.length;o<A;o+=4096)e.push(c.apply(null,r.subarray(o,o+4096)));return p(e.join(""))},g=(r,t=!1)=>t?_r(F(r)):F(r),Ot=r=>{if(r.length<2){var t=r.charCodeAt(0);return t<128?r:t<2048?c(192|t>>>6)+c(128|t&63):c(224|t>>>12&15)+c(128|t>>>6&63)+c(128|t&63)}else{var t=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return c(240|t>>>18&7)+c(128|t>>>12&63)+c(128|t>>>6&63)+c(128|t&63)}},Dt=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,nr=r=>r.replace(Dt,Ot),cr=L?r=>Buffer.from(r,"utf8").toString("base64"):or?r=>F(or.encode(r)):r=>p(nr(r)),Y=(r,t=!1)=>t?_r(cr(r)):cr(r),sr=r=>Y(r,!0),Tt=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,ut=r=>{switch(r.length){case 4:var t=(7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3),e=t-65536;return c((e>>>10)+55296)+c((e&1023)+56320);case 3:return c((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return c((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},ar=r=>r.replace(Tt,ut),Nr=r=>{if(r=r.replace(/\s+/g,""),!Rt.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let t,e="",o,A;for(let _=0;_<r.length;)t=B[r.charAt(_++)]<<18|B[r.charAt(_++)]<<12|(o=B[r.charAt(_++)])<<6|(A=B[r.charAt(_++)]),e+=o===64?c(t>>16&255):A===64?c(t>>16&255,t>>8&255):c(t>>16&255,t>>8&255,t&255);return e},G=at?r=>atob(Er(r)):L?r=>Buffer.from(r,"base64").toString("binary"):Nr,Rr=L?r=>Ar(Buffer.from(r,"base64")):r=>Ar(G(r),t=>t.charCodeAt(0)),Or=r=>Rr(Dr(r)),Pt=L?r=>Buffer.from(r,"base64").toString("utf8"):er?r=>er.decode(Rr(r)):r=>ar(G(r)),Dr=r=>Er(r.replace(/[-_]/g,t=>t=="-"?"+":"/")),K=r=>Pt(Dr(r)),Lt=r=>{if(typeof r!="string")return!1;const t=r.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(t)||!/[^\s0-9a-zA-Z\-_]/.test(t)},Tr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),ur=function(){const r=(t,e)=>Object.defineProperty(String.prototype,t,Tr(e));r("fromBase64",function(){return K(this)}),r("toBase64",function(t){return Y(this,t)}),r("toBase64URI",function(){return Y(this,!0)}),r("toBase64URL",function(){return Y(this,!0)}),r("toUint8Array",function(){return Or(this)})},Pr=function(){const r=(t,e)=>Object.defineProperty(Uint8Array.prototype,t,Tr(e));r("toBase64",function(t){return g(this,t)}),r("toBase64URI",function(){return g(this,!0)}),r("toBase64URL",function(){return g(this,!0)})},Lr={version:tr,VERSION:st,atob:G,atobPolyfill:Nr,btoa:p,btoaPolyfill:ir,fromBase64:K,toBase64:Y,encode:Y,encodeURI:sr,encodeURL:sr,utob:nr,btou:ar,decode:K,isValid:Lt,fromUint8Array:g,toUint8Array:Or,extendString:ur,extendUint8Array:Pr,extendBuiltins:()=>{ur(),Pr()}},Yt={encode:Ct,decode:Lr.decode};function Ct(r,t={}){const{urlSafe:e=!1}=t;return Lr.encode(r,e)}function dt(r){const t=It(r),e=t.exp*1e3;if(Date.now()>e)throw new Error(`${St}. Expiration date: ${new Date(e).toISOString()}`);return t}const Yr="The provided `clientToken`",St=`${Yr} has expired`,ft=`${Yr} is malformed`;function It(r){try{const[t,e]=r.split("."),o=e||t;return JSON.parse(Yt.decode(o))}catch{throw new Error(ft)}}const Cr=15e3,lt={"content-type":"application/json"},Mt=(r,t)=>dr("get",r,t),Ut=(r,t,e)=>dr("post",r,e,JSON.stringify(t)),dr=(r,t,e,o)=>fetch(t,{body:o,method:r,headers:{...lt,...e}}).then(async A=>{if(!A.ok){const _=new Error(`HTTP error! status: ${A.status}`);throw _.status=A.status,_}return A.json()}).catch(A=>{if(A instanceof TypeError){const _=new Error("Network error");throw _.isNetworkError=!0,_}throw A}),Sr=(r,t)=>new Promise((e,o)=>{const A=setTimeout(()=>{const _=new Error("Request timed out");_.isNetworkError=!0,o(_)},t);r.then(e).catch(o).finally(()=>clearTimeout(A))}),ht=(r,t={})=>{const{headers:e,log:o,retryConfig:A,timeout:_=Cr}=t;return m(()=>Sr(Mt(r,e),_),A,o)},qt=(r,t,e={})=>{const{headers:o,log:A,retryConfig:_,timeout:E=Cr}=e;return retryWithExponentialBackoff(()=>Sr(Ut(r,t,o),E),_,A)},Bt="v2.43.1",gt=(r,t,e)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":Bt,"primer-sdk-checkout-session-id":t,...e&&{"x-api-version":e}});async function kt(r,t,e,o){try{return await ht(`${t}/?withDisplayMetadata=true`,{headers:gt(r,e,"2.2"),log:o,retryConfig:{enabled:!0}})}catch(A){const _=A instanceof Error?A.message:"Unknown error occurred",E=A instanceof Error&&A.stack?A.stack:JSON.stringify(A);throw o?.(`Failed to initialize client: ${_}
|
|
2
|
-
Error details: ${E}`),new Error(`Failed to initialize client: ${_}`)}}const wt="v2.43.1",bt=k("createHeadless"),vt=k("showExpressCheckout"),xt=k("showUniversalCheckout"),Ht=k("showVaultManager"),fr="LOAD_PERFORMANCE",l=y();let u=v({checkoutSessionId:l});u.messageEvent({message:"parsed",messageType:fr,now:performance.now?.()});function k(r){return async(...[t,e,...o])=>{u.sdkFunctionEvent({name:r,params:[t,e,...o]}),u.messageEvent({message:"create",messageType:fr,now:performance.now?.()});const[A,_]=await Promise.all([pt(t),X(u)]);return _[r](A,l,t,e)}}async function pt(r){const{accessToken:t,configurationUrl:e,analyticsUrlV2:o}=dt(r);u=v({checkoutSessionId:l,url:o});const A=`${e}/?withDisplayMetadata=true`,_=y(),E={method:"get",url:A},i=Date.now();u.networkCallEvent(H(_,E));const n=await kt(t,e,l,M=>{u.networkCallEvent(H(_,E,{error:M}))}),{primerAccountId:T}=n,{clientSessionId:R}=n.clientSession;u=v({checkoutSessionId:l,clientSessionId:R,primerAccountId:T,url:o});const C=Date.now()-i;return u.networkCallEvent(H(_,E,{data:n},C)),n}const Ft=()=>X().then(()=>{});var Gt=(r=>(r.LOADING="Loading",r.NO_PAYMENT_METHOD="NoPaymentMethod",r.THREE_DS="UniversalCheckout/3ds",r.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",r.MANAGE_PAYMENT_METHODS="VaultManager/Home",r.DIRECT_DEBIT_FORM="DirectDebit/Form",r.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",r.CREDIT_CARD_FORM="CreditCard/Form",r.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",r.SUCCESS_CHECK="UniversalCheckout/Success/Check",r))(Gt||{}),Kt=(r=>(r.ROOT="primer-checkout",r.ROOT_CONTENT="primer-checkout-content",r.SUBMIT_BUTTON="primer-checkout-submit-button",r.THREE_DS_MODAL="primer-checkout-3ds-modal",r.VAULT="primer-checkout-vault",r.VAULT_INLINE="primer-checkout-vault-inline",r.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",r.DIVIDER="primer-checkout-payment-method-divider",r.APM_BUTTONS="primer-checkout-apm-button-container",r.CARDHOLDER_NAME="primer-checkout-cardholder-name",r.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",r.ACTIONS="primer-checkout-actions",r.ACTIONS_MENU="primer-checkout-actions-menu",r.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",r.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",r.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",r.CARD_FORM="primer-checkout-card-form",r.DD_SWITCH="primer-checkout-switch-dd-inputs",r.DD_IBAN_FIELD="primer-checkout-dd-iban-field",r.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",r.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",r.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",r.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",r.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",r.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",r.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",r.DD_IBAN_INPUT="primer-checkout-dd-iban-input",r.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",r.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",r.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",r.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",r.ERROR_MESSAGE="primer-checkout-error-message",r))(Kt||{}),Vt=(r=>(r.TOKEN="PrimerCheckout__token",r.HIDDEN="PrimerCheckout--hidden",r.FOCUSED="PrimerCheckout--focused",r.SELECTED="PrimerCheckout--selected",r.LOADING="PrimerCheckout--loading",r.ERROR="PrimerCheckout--error",r.CARD_TYPE="PrimerCheckout__cardType",r.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",r.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",r.APM_BUTTON="PrimerCheckout__apmButton",r.EDIT_BUTTON="PrimerCheckout__editButton",r.MENU="PrimerCheckout__dropDownMenu",r.MENU_ITEM="PrimerCheckout__dropDownMenuItem",r.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",r.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",r.ENTER="PrimerCheckout--enter",r.ENTERING="PrimerCheckout--entering",r.ENTERED="PrimerCheckout--entered",r.EXIT="PrimerCheckout--exit",r.EXITING="PrimerCheckout--exiting",r.EXITED="PrimerCheckout--exited",r))(Vt||{}),Ir=(r=>(r.CHECKOUT="CHECKOUT",r.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",r.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",r.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",r.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",r))(Ir||{}),lr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(lr||{}),Wt=(r=>(r.TOKENIZE_STARTED="tokenize-started",r.TOKENIZE_ERROR="tokenize-error",r.TOKENIZE_SUCCESS="tokenize-success",r.TOKENIZE_DID_NOT_START="tokenize-did-not-start",r))(Wt||{}),Mr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(Mr||{}),Ur=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL_ORDER",r.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",r.GO_CARDLESS="GOCARDLESS",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r.KLARNA_CUSTOMER_TOKEN="KLARNA_CUSTOMER_TOKEN",r))(Ur||{}),V=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.STRIPE_IDEAL="STRIPE_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.PAYMENT_CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL",r.GO_CARDLESS="GOCARDLESS",r.KLARNA="KLARNA",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r))(V||{}),mt=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(mt||{}),hr=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(hr||{});const Br={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},yt=r=>{if(Object.values(V).includes(r))return r;if(Br[r])return Br[r]};var gr=(r=>(r.INITIALIZATION_ERROR="INITIALIZATION_ERROR",r.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",r.PRIMER_TEARDOWN="PRIMER_TEARDOWN",r.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",r.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",r.TOKENIZATION_ERROR="TOKENIZATION_ERROR",r.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",r.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",r.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",r.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",r.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",r.RESUME_ERROR="RESUME_ERROR",r.VALIDATION_ERROR="VALIDATION_ERROR",r.PAYMENT_FAILED="PAYMENT_FAILED",r.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",r.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",r.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",r.INVALID_ARGUMENT="INVALID_ARGUMENT",r.VAULT_FETCH="VAULT_FETCH",r.VAULT_DELETE="VAULT_DELETE",r.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",r.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",r.MISSING_FIRST_NAME_OR_LAST_NAME="MISSING_FIRST_NAME_OR_LAST_NAME",r))(gr||{});class kr extends Error{static fromErrorCode(t,e,o){return new kr(t,e,o)}constructor(t,e,o){super(e.message),this.message=e.message,this.code=t,this.diagnosticsId=e.diagnosticsId||null,this.data=e.data,this.isFromDeveloper=e.isFromDeveloper??!1,o?.messageEvent?.({message:e.message,messageType:t,severity:"ERROR",...e.diagnosticsId&&{diagnosticsId:e.diagnosticsId},...e.errorId&&{errorId:e.errorId},...e.data&&{data:e.data},...e.isFromDeveloper!==void 0&&{isFromDeveloper:String(e.isFromDeveloper)},stack:this.stack})}}const re=r=>{throw console.error(r.message),r};var $t=s(473),wr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(wr||{}),br=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(br||{}),vr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r))(vr||{});const jt={SDK_VERSION:wt,createHeadless:bt,showExpressCheckout:vt,showUniversalCheckout:xt,showVaultManager:Ht}})(),w})());
|
|
1
|
+
(function(h,s){typeof exports=="object"&&typeof module=="object"?module.exports=s():typeof define=="function"&&define.amd?define([],s):typeof exports=="object"?exports.Primer=s():h.Primer=s()})(this,()=>(()=>{var W={476:()=>{},962:()=>{},473:()=>{}},h={};function s(a){var O=h[a];if(O!==void 0)return O.exports;var D=h[a]={exports:{}};return W[a](D,D.exports,s),D.exports}s.d=(a,O)=>{for(var D in O)s.o(O,D)&&!s.o(a,D)&&Object.defineProperty(a,D,{enumerable:!0,get:O[D]})},s.o=(a,O)=>Object.prototype.hasOwnProperty.call(a,O),s.r=a=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})};var w={};return(()=>{"use strict";s.r(w),s.d(w,{CheckoutUXFlow:()=>fr,ErrorCode:()=>gr,EventTypes:()=>br,HeadlessManagerType:()=>vr,PaymentFlow:()=>lr,PaymentInstrumentType:()=>hr,PaymentMethodData:()=>$t.PaymentMethodData,PaymentMethodType:()=>V,Primer:()=>Xt,SuccessScreenType:()=>wr,ThreeDSecureStatus:()=>Mr,TokenType:()=>Ur,isStripeOptionsDropInWithFullMandateText:()=>jt,preloadPrimer:()=>pt});const a=8,O=100,D=100,xr=r=>new Promise(t=>setTimeout(t,r));function Hr(r){return{enabled:r?.enabled??!1,maxRetries:a,initialBackoff:O,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:D}}function Fr(r,t,e){const o=r*Math.pow(2,t-1),A=Math.random()*e;return Math.min(o+A,Number.MAX_SAFE_INTEGER)}async function m(r,t,e,o,A=xr){let _=0;const E=Hr(t);if(!E.enabled)return r();for(;;)try{const i=await r();return o&&o(),i}catch(i){const n=i,T=_>=E.maxRetries,R=n.isNetworkError&&!E.retryNetworkErrors,N=n.status&&n.status>=500&&!E.retry500Errors;if(T||R||N){let C=`Failed after ${_} retries. `;throw T?C+=`Reached maximum retries (${E.maxRetries}).`:R?C+="Network error encountered and retryNetworkErrors is disabled.":N&&(C+="HTTP 500 error encountered and retry500Errors is disabled."),C+=` Last error: ${n.message}`,e&&e(C),new Error(C,{cause:i})}_++;const Y=Fr(E.initialBackoff,_,E.maxJitter);let M="Unknown error";n.isNetworkError?M="Network error":n.status&&(M=`HTTP ${n.status} error`),e&&e(`Retry attempt ${_}/${E.maxRetries} due to: ${M}. Error details: ${n.message}. Waiting for ${Y.toFixed(2)}ms before next attempt.`),await A(Y)}}function pr(r,t){const e=document.createElement(r);return Object.entries(t).forEach(([o,A])=>e.setAttribute(o,A)),e}function $(r,t,e){return document.querySelector(`${r}[${t}^="${e}"]`)}async function j(r,t,e,o,A,_){const{logger:E,retryConfig:i}=_;await m(()=>new Promise((T,R)=>{const N=$(r,e,t)||pr(r,{...o,[e]:t});N.onload=()=>{E?.(`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${t}`),T()},N.onerror=()=>{N.remove(),R(new Error(`${A}: ${t}`))},N.parentNode||document.head.appendChild(N)}),i,E)}function Gr(r,t={}){return $("script","src",r)&&window.__Primer?(t.logger?.("Script already loaded"),Promise.resolve()):j("script",r,"src",{...t.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",t)}function Kr(r,t={}){return Array.from(document.styleSheets).some(e=>e.href===r)?(t.logger?.("Stylesheet already loaded"),Promise.resolve()):j("link",r,"href",{...t.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",t)}let d;async function X(r){return d||(d=Promise.all([Gr("https://sdk.primer.io/web/v2.44.1/PrimerCoreSDK.min.js",{logger:o=>{r?.sdkFunctionEvent({name:"loadPrimerScript",params:[o]})}}),Kr("https://sdk.primer.io/web/v2.44.1/Checkout.css",{logger:o=>{r?.sdkFunctionEvent({name:"loadPrimerCss",params:[o]})}})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw d=void 0,o}),d)}var zt=s(476),Qt=s(962),b=(r=>(r.REQUEST_START="REQUEST_START",r.REQUEST_END="REQUEST_END",r))(b||{}),Vr=(r=>(r.START="START",r.END="END",r))(Vr||{}),P=(r=>(r.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",r.CRASH_EVENT="CRASH_EVENT",r.TIMER_EVENT="TIMER_EVENT",r.MESSAGE_EVENT="MESSAGE_EVENT",r.V1_EVENT="V1_EVENT",r.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",r))(P||{});const Wr={get(r,t){let e;try{switch(r){case"PRIMER_SDK_VERSION":e="v2.44.1";break;case"PRIMER_ASSETS_URL":e=process.env.PRIMER_ASSETS_URL;break;case"PRIMER_CORE_API_URL":e=process.env.PRIMER_CORE_API_URL;break;case"PRIMER_PCI_API_URL":e=process.env.PRIMER_PCI_API_URL;break;case"PRIMER_MODULES_URL":e=process.env.PRIMER_MODULES_URL;break;case"PRIMER_BUILD_INTEGRATION_BUILDER":e=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;case"SENTRY_DSN":e=process.env.SENTRY_DSN;break;default:break}}catch{}return e||t}};var mr=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(mr||{});async function $r(){if(typeof navigator>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},platformVersion:navigator.platform,userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const jr="WEB",Xr=Wr.get("PRIMER_SDK_VERSION");async function zr(r,t,e){return{...e,createdAt:Date.now(),device:await $r(),eventType:r,properties:t,sdkVersion:Xr,sdkType:jr}}const z="https://analytics.production.data.primer.io/sdk-logs",Qr=z==="https://analytics.sandbox.data.primer.io/playwright",Q=1024*5,Zr=500,U=new Map,I=new Map;function v({url:r=z,...t}={}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Z(r,!0)});const e=o=>async A=>{if(typeof navigator>"u")return;const _=await zr(o,A,t),E=n=>qr(yr(n));if(Qr)return;const i=J(_,E);Jr(r,i)};return{crashEvent:e(P.CRASH_EVENT),messageEvent:e(P.MESSAGE_EVENT),networkCallEvent:e(P.NETWORK_CALL_EVENT),sdkFunctionEvent:e(P.SDK_FUNCTION_EVENT),timerEvent:e(P.TIMER_EVENT),v1Event:e(P.V1_EVENT)}}function Z(r,t=!1){if(U.has(r)){const A=U.get(r);clearTimeout(A),U.delete(r)}const e=()=>{const A=I.get(r);if(A?.length){try{navigator.sendBeacon(r,JSON.stringify(A))}catch(_){console.error("Unable to access navigator",_)}I.delete(r)}};if(t){e();return}const o=setTimeout(e,Zr);U.set(r,o)}function Jr(r,t){I.has(r)||I.set(r,[]),I.get(r)?.push(t),Z(r)}function J(r,t){const e=o=>typeof o=="object"&&o!==null?J(o,t):t(o);return Array.isArray(r)?r.map(e):Object.fromEntries(Object.entries(r).map(([o,A])=>[o,e(A)]))}function qr(r){return typeof r=="string"&&r.length>Q?`${r.slice(0,Q)}...`:r}function yr(r){return typeof r=="function"?r.name||"function":r}class x{constructor(t,e){this.type=t,this.displayName=e}get specs(){return this.constructor.specs}setOption(t,e){this.options&&(this.options[t]=e)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(t){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(t){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}x.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},x.create=(r,t,e,o)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class rt extends x{async tokenize(t){}}class tt{get session(){const t=this.store.getState().clientSessionInfo;if(!t)throw new Error("Client Context Session does not exist");return t}}const et=[Array,rt,tt,Map,Set];function ot(r){const t=new Set,e=20;let o=0;for(;o++<e&&r&&r!==Object.prototype;)Object.getOwnPropertyNames(r).forEach(A=>t.add(A)),r=Object.getPrototypeOf(r);return[...t]}function q(r,t,e,o,A){if(!e||et.some(_=>e instanceof _))return e;switch(typeof e){case"function":return new Proxy(e,{apply(_,E,i=[]){const n={name:t.replace(/^bound /,""),params:i,module:A};r?.sdkFunctionEvent(n);const T=i.map((R,N)=>q(r,`${N}`,R,o,[A,t,`${N}`].filter(Boolean).join(".")));return _.apply(E,T)}});case"object":return e===o?e:At(r,e,[A,t].filter(Boolean).join("."));default:return e}}function At(r,t,e){return Object.fromEntries(ot(t).map(o=>{const A=t?.[o],_=q(r,o,A,A,e);return[o,_]}))}const y=()=>rr.randomUUID?.()||_t(),_t=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^Et()>>r/4).toString(16)),Et=()=>(rr.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,rr=typeof crypto<"u"?crypto:{},it=new Set(["post","get","delete"]),nt=new Set(["post"]);function ct(r,t,e,o){const A=nt.has(r);return{method:r,options:A?o:e,body:A?e:void 0,url:t}}function Zt(r,t){const e=({prop:o})=>({apply:async(A,_,E=[])=>{const i=ct(o.toString(),...E);if(i.options?.isAnalytics)return A.apply(_,E);const n=uuid();t?.networkCallEvent(prepareNetworkEventProps(n,i));const T=Date.now(),R=await A.apply(_,E),Y=Date.now()-T;return t?.networkCallEvent(prepareNetworkEventProps(n,i,R,Y)),R}});return new Proxy(r,{get(o,A){const _=o[A];return typeof _=="function"&&it.has(A)?new Proxy(_,e({prop:A})):_}})}const H=(r,t,e,o)=>({callType:e?b.REQUEST_END:b.REQUEST_START,id:r,errorBody:e?.error&&JSON.stringify(e.error),method:t.method,responseCode:e?.status,url:t.url,duration:o}),tr="3.6.1",st=tr,at=typeof atob=="function",Nt=typeof btoa=="function",L=typeof Buffer=="function",er=typeof TextDecoder=="function"?new TextDecoder:void 0,or=typeof TextEncoder=="function"?new TextEncoder:void 0,f=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],B=(r=>{let t={};return r.forEach((e,o)=>t[e]=o),t})(f),Rt=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,c=String.fromCharCode.bind(String),Ar=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,t=e=>e)=>new Uint8Array(Array.prototype.slice.call(r,0).map(t)),_r=r=>r.replace(/[+\/]/g,t=>t=="+"?"-":"_").replace(/=+$/m,""),Er=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),ir=r=>{let t,e,o,A,_="";const E=r.length%3;for(let i=0;i<r.length;){if((e=r.charCodeAt(i++))>255||(o=r.charCodeAt(i++))>255||(A=r.charCodeAt(i++))>255)throw new TypeError("invalid character found");t=e<<16|o<<8|A,_+=f[t>>18&63]+f[t>>12&63]+f[t>>6&63]+f[t&63]}return E?_.slice(0,E-3)+"===".substring(E):_},F=Nt?r=>btoa(r):L?r=>Buffer.from(r,"binary").toString("base64"):ir,p=L?r=>Buffer.from(r).toString("base64"):r=>{let e=[];for(let o=0,A=r.length;o<A;o+=4096)e.push(c.apply(null,r.subarray(o,o+4096)));return F(e.join(""))},g=(r,t=!1)=>t?_r(p(r)):p(r),Ot=r=>{if(r.length<2){var t=r.charCodeAt(0);return t<128?r:t<2048?c(192|t>>>6)+c(128|t&63):c(224|t>>>12&15)+c(128|t>>>6&63)+c(128|t&63)}else{var t=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return c(240|t>>>18&7)+c(128|t>>>12&63)+c(128|t>>>6&63)+c(128|t&63)}},Dt=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,nr=r=>r.replace(Dt,Ot),cr=L?r=>Buffer.from(r,"utf8").toString("base64"):or?r=>p(or.encode(r)):r=>F(nr(r)),S=(r,t=!1)=>t?_r(cr(r)):cr(r),sr=r=>S(r,!0),Tt=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,ut=r=>{switch(r.length){case 4:var t=(7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3),e=t-65536;return c((e>>>10)+55296)+c((e&1023)+56320);case 3:return c((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return c((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},ar=r=>r.replace(Tt,ut),Nr=r=>{if(r=r.replace(/\s+/g,""),!Rt.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let t,e="",o,A;for(let _=0;_<r.length;)t=B[r.charAt(_++)]<<18|B[r.charAt(_++)]<<12|(o=B[r.charAt(_++)])<<6|(A=B[r.charAt(_++)]),e+=o===64?c(t>>16&255):A===64?c(t>>16&255,t>>8&255):c(t>>16&255,t>>8&255,t&255);return e},G=at?r=>atob(Er(r)):L?r=>Buffer.from(r,"base64").toString("binary"):Nr,Rr=L?r=>Ar(Buffer.from(r,"base64")):r=>Ar(G(r),t=>t.charCodeAt(0)),Or=r=>Rr(Dr(r)),Pt=L?r=>Buffer.from(r,"base64").toString("utf8"):er?r=>er.decode(Rr(r)):r=>ar(G(r)),Dr=r=>Er(r.replace(/[-_]/g,t=>t=="-"?"+":"/")),K=r=>Pt(Dr(r)),Lt=r=>{if(typeof r!="string")return!1;const t=r.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(t)||!/[^\s0-9a-zA-Z\-_]/.test(t)},Tr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),ur=function(){const r=(t,e)=>Object.defineProperty(String.prototype,t,Tr(e));r("fromBase64",function(){return K(this)}),r("toBase64",function(t){return S(this,t)}),r("toBase64URI",function(){return S(this,!0)}),r("toBase64URL",function(){return S(this,!0)}),r("toUint8Array",function(){return Or(this)})},Pr=function(){const r=(t,e)=>Object.defineProperty(Uint8Array.prototype,t,Tr(e));r("toBase64",function(t){return g(this,t)}),r("toBase64URI",function(){return g(this,!0)}),r("toBase64URL",function(){return g(this,!0)})},Lr={version:tr,VERSION:st,atob:G,atobPolyfill:Nr,btoa:F,btoaPolyfill:ir,fromBase64:K,toBase64:S,encode:S,encodeURI:sr,encodeURL:sr,utob:nr,btou:ar,decode:K,isValid:Lt,fromUint8Array:g,toUint8Array:Or,extendString:ur,extendUint8Array:Pr,extendBuiltins:()=>{ur(),Pr()}},St={encode:Yt,decode:Lr.decode};function Yt(r,t={}){const{urlSafe:e=!1}=t;return Lr.encode(r,e)}function Ct(r){const t=ft(r),e=t.exp*1e3;if(Date.now()>e)throw new Error(`${dt}. Expiration date: ${new Date(e).toISOString()}`);return t}const Sr="The provided `clientToken`",dt=`${Sr} has expired`,It=`${Sr} is malformed`;function ft(r){try{const[t,e]=r.split("."),o=e||t;return JSON.parse(St.decode(o))}catch{throw new Error(It)}}const Yr=15e3,lt={"content-type":"application/json"},Mt=(r,t)=>Cr("get",r,t),ht=(r,t,e)=>Cr("post",r,e,JSON.stringify(t)),Cr=(r,t,e,o)=>fetch(t,{body:o,method:r,headers:{...lt,...e}}).then(async A=>{if(!A.ok){const _=new Error(`HTTP error! status: ${A.status}`);throw _.status=A.status,_}return A.json()}).catch(A=>{if(A instanceof TypeError){const _=new Error("Network error");throw _.isNetworkError=!0,_}throw A}),dr=(r,t)=>new Promise((e,o)=>{const A=setTimeout(()=>{const _=new Error("Request timed out");_.isNetworkError=!0,o(_)},t);r.then(e).catch(o).finally(()=>clearTimeout(A))}),Ut=(r,t={})=>{const{headers:e,log:o,retryConfig:A,timeout:_=Yr}=t;return m(()=>dr(Mt(r,e),_),A,o)},yt=(r,t,e={})=>{const{headers:o,log:A,retryConfig:_,timeout:E=Yr}=e;return retryWithExponentialBackoff(()=>dr(ht(r,t,o),E),_,A)},Bt="v2.44.1",gt=(r,t,e)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":Bt,"primer-sdk-checkout-session-id":t,...e&&{"x-api-version":e}});async function kt(r,t,e,o){try{return await Ut(`${t}/?withDisplayMetadata=true`,{headers:gt(r,e,"2.2"),log:o,retryConfig:{enabled:!0}})}catch(A){const _=A instanceof Error?A.message:"Unknown error occurred",E=A instanceof Error&&A.stack?A.stack:JSON.stringify(A);throw o?.(`Failed to initialize client: ${_}
|
|
2
|
+
Error details: ${E}`),new Error(`Failed to initialize client: ${_}`)}}const wt="v2.44.1",bt=k("createHeadless"),vt=k("showExpressCheckout"),xt=k("showUniversalCheckout"),Ht=k("showVaultManager"),Ir="LOAD_PERFORMANCE",l=y();let u=v({checkoutSessionId:l});u.messageEvent({message:"parsed",messageType:Ir,now:performance.now?.()});function k(r){return async(...[t,e,...o])=>{u.sdkFunctionEvent({name:r,params:[t,e,...o]}),u.messageEvent({message:"create",messageType:Ir,now:performance.now?.()});const[A,_]=await Promise.all([Ft(t),X(u)]);return _[r](A,l,t,e)}}async function Ft(r){const{accessToken:t,configurationUrl:e,analyticsUrlV2:o}=Ct(r);u=v({checkoutSessionId:l,url:o});const A=`${e}/?withDisplayMetadata=true`,_=y(),E={method:"get",url:A},i=Date.now();u.networkCallEvent(H(_,E));const n=await kt(t,e,l,M=>{u.networkCallEvent(H(_,E,{error:M}))}),{primerAccountId:T}=n,{clientSessionId:R}=n.clientSession;u=v({checkoutSessionId:l,clientSessionId:R,primerAccountId:T,url:o});const Y=Date.now()-i;return u.networkCallEvent(H(_,E,{data:n},Y)),n}const pt=()=>X().then(()=>{});var Gt=(r=>(r.LOADING="Loading",r.NO_PAYMENT_METHOD="NoPaymentMethod",r.THREE_DS="UniversalCheckout/3ds",r.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",r.MANAGE_PAYMENT_METHODS="VaultManager/Home",r.DIRECT_DEBIT_FORM="DirectDebit/Form",r.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",r.CREDIT_CARD_FORM="CreditCard/Form",r.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",r.SUCCESS_CHECK="UniversalCheckout/Success/Check",r))(Gt||{}),Kt=(r=>(r.ROOT="primer-checkout",r.ROOT_CONTENT="primer-checkout-content",r.SUBMIT_BUTTON="primer-checkout-submit-button",r.THREE_DS_MODAL="primer-checkout-3ds-modal",r.VAULT="primer-checkout-vault",r.VAULT_INLINE="primer-checkout-vault-inline",r.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",r.DIVIDER="primer-checkout-payment-method-divider",r.APM_BUTTONS="primer-checkout-apm-button-container",r.CARDHOLDER_NAME="primer-checkout-cardholder-name",r.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",r.ACTIONS="primer-checkout-actions",r.ACTIONS_MENU="primer-checkout-actions-menu",r.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",r.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",r.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",r.CARD_FORM="primer-checkout-card-form",r.DD_SWITCH="primer-checkout-switch-dd-inputs",r.DD_IBAN_FIELD="primer-checkout-dd-iban-field",r.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",r.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",r.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",r.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",r.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",r.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",r.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",r.DD_IBAN_INPUT="primer-checkout-dd-iban-input",r.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",r.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",r.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",r.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",r.ERROR_MESSAGE="primer-checkout-error-message",r))(Kt||{}),Vt=(r=>(r.TOKEN="PrimerCheckout__token",r.HIDDEN="PrimerCheckout--hidden",r.FOCUSED="PrimerCheckout--focused",r.SELECTED="PrimerCheckout--selected",r.LOADING="PrimerCheckout--loading",r.ERROR="PrimerCheckout--error",r.CARD_TYPE="PrimerCheckout__cardType",r.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",r.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",r.APM_BUTTON="PrimerCheckout__apmButton",r.EDIT_BUTTON="PrimerCheckout__editButton",r.MENU="PrimerCheckout__dropDownMenu",r.MENU_ITEM="PrimerCheckout__dropDownMenuItem",r.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",r.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",r.ENTER="PrimerCheckout--enter",r.ENTERING="PrimerCheckout--entering",r.ENTERED="PrimerCheckout--entered",r.EXIT="PrimerCheckout--exit",r.EXITING="PrimerCheckout--exiting",r.EXITED="PrimerCheckout--exited",r))(Vt||{}),fr=(r=>(r.CHECKOUT="CHECKOUT",r.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",r.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",r.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",r.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",r))(fr||{}),lr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(lr||{}),Wt=(r=>(r.TOKENIZE_STARTED="tokenize-started",r.TOKENIZE_ERROR="tokenize-error",r.TOKENIZE_SUCCESS="tokenize-success",r.TOKENIZE_DID_NOT_START="tokenize-did-not-start",r))(Wt||{}),Mr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(Mr||{}),hr=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL_ORDER",r.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",r.GO_CARDLESS="GOCARDLESS",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r.KLARNA_CUSTOMER_TOKEN="KLARNA_CUSTOMER_TOKEN",r))(hr||{}),V=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_IDEAL="STRIPE_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.PAYMENT_CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL",r.GO_CARDLESS="GOCARDLESS",r.KLARNA="KLARNA",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r))(V||{}),mt=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(mt||{}),Ur=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(Ur||{});const Br={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},re=r=>{if(Object.values(V).includes(r))return r;if(Br[r])return Br[r]};var gr=(r=>(r.INITIALIZATION_ERROR="INITIALIZATION_ERROR",r.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",r.PRIMER_TEARDOWN="PRIMER_TEARDOWN",r.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",r.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",r.TOKENIZATION_ERROR="TOKENIZATION_ERROR",r.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",r.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",r.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",r.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",r.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",r.RESUME_ERROR="RESUME_ERROR",r.VALIDATION_ERROR="VALIDATION_ERROR",r.PAYMENT_FAILED="PAYMENT_FAILED",r.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",r.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",r.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",r.INVALID_ARGUMENT="INVALID_ARGUMENT",r.VAULT_FETCH="VAULT_FETCH",r.VAULT_DELETE="VAULT_DELETE",r.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",r.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",r.MISSING_FIRST_NAME_OR_LAST_NAME="MISSING_FIRST_NAME_OR_LAST_NAME",r.MISSING_EMAIL_ADDRESS="MISSING_EMAIL_ADDRESS",r.INVALID_FLOW="INVALID_FLOW",r))(gr||{});class kr extends Error{static fromErrorCode(t,e,o){return new kr(t,e,o)}constructor(t,e,o){super(e.message),this.message=e.message,this.code=t,this.diagnosticsId=e.diagnosticsId||null,this.data=e.data,this.isFromDeveloper=e.isFromDeveloper??!1,o?.messageEvent?.({message:e.message,messageType:t,severity:"ERROR",...e.diagnosticsId&&{diagnosticsId:e.diagnosticsId},...e.errorId&&{errorId:e.errorId},...e.data&&{data:e.data},...e.isFromDeveloper!==void 0&&{isFromDeveloper:String(e.isFromDeveloper)},stack:this.stack})}}const te=r=>{throw console.error(r.message),r};var $t=s(473),wr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(wr||{});const jt=r=>"fullMandateText"in r?.mandateData;var br=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(br||{}),vr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r.ACH="ACH",r))(vr||{});const Xt={SDK_VERSION:wt,createHeadless:bt,showExpressCheckout:vt,showUniversalCheckout:xt,showVaultManager:Ht}})(),w})());
|
package/dist/index.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export declare enum PaymentInstrumentType {
|
|
|
32
32
|
PRIMER_PAYPAL = "PRIMER_PAYPAL",
|
|
33
33
|
TWOC2P = "TWOC2P",
|
|
34
34
|
NETS = "NETS",
|
|
35
|
+
STRIPE_ACH = "STRIPE_ACH",
|
|
35
36
|
STRIPE_GIROPAY = "STRIPE_GIROPAY",
|
|
36
37
|
MOLLIE_GIROPAY = "MOLLIE_GIROPAY",
|
|
37
38
|
MOLLIE_EPS = "MOLLIE_EPS",
|
|
@@ -79,6 +80,7 @@ export declare enum PaymentInstrumentType {
|
|
|
79
80
|
}
|
|
80
81
|
export declare enum PaymentMethodType {
|
|
81
82
|
WORLDPAY_IDEAL = "WORLDPAY_IDEAL",
|
|
83
|
+
STRIPE_ACH = "STRIPE_ACH",
|
|
82
84
|
STRIPE_IDEAL = "STRIPE_IDEAL",
|
|
83
85
|
ADYEN_KLARNA = "ADYEN_KLARNA",
|
|
84
86
|
ADYEN_BANCONTACT_CARD = "ADYEN_BANCONTACT_CARD",
|
|
@@ -986,6 +988,7 @@ export interface ICheckoutState extends IBaseState {
|
|
|
986
988
|
locale: SupportedLocale;
|
|
987
989
|
tokens: VaultedPaymentMethod[];
|
|
988
990
|
translation: TranslationUnit;
|
|
991
|
+
paymentResponse: any;
|
|
989
992
|
currentToken: PaymentMethodToken | null;
|
|
990
993
|
scene: {
|
|
991
994
|
onEntering?: (sceneId: string) => void;
|
|
@@ -1048,8 +1051,10 @@ declare class CheckoutStore extends BaseStore<ICheckoutState> implements IOption
|
|
|
1048
1051
|
setIsLoading(isLoading: boolean): void;
|
|
1049
1052
|
setIsProcessing(isProcessing: boolean): void;
|
|
1050
1053
|
setLocale(locale: SupportedLocale): void;
|
|
1054
|
+
setPaymentResponse(paymentResponse: any): void;
|
|
1051
1055
|
getLocale(): SupportedLocale;
|
|
1052
1056
|
getIsRtlLocale(): boolean;
|
|
1057
|
+
getPaymentResponse(): any;
|
|
1053
1058
|
setIsTokenizationEnabled(isEnabled: boolean): void;
|
|
1054
1059
|
getIsTokenizationEnabled(): boolean;
|
|
1055
1060
|
setScene(scene: string, action?: string): Promise<void>;
|
|
@@ -1267,7 +1272,9 @@ export declare enum ErrorCode {
|
|
|
1267
1272
|
VAULT_DELETE = "VAULT_DELETE",
|
|
1268
1273
|
HEADLESS_VAULT_MANAGER_VALIDATION = "HEADLESS_VAULT_MANAGER_VALIDATION",
|
|
1269
1274
|
CARD_FORM_VALIDATION_UNEXPECTED_FIELD = "CARD_FORM_VALIDATION_UNEXPECTED_FIELD",
|
|
1270
|
-
MISSING_FIRST_NAME_OR_LAST_NAME = "MISSING_FIRST_NAME_OR_LAST_NAME"
|
|
1275
|
+
MISSING_FIRST_NAME_OR_LAST_NAME = "MISSING_FIRST_NAME_OR_LAST_NAME",
|
|
1276
|
+
MISSING_EMAIL_ADDRESS = "MISSING_EMAIL_ADDRESS",
|
|
1277
|
+
INVALID_FLOW = "INVALID_FLOW"
|
|
1271
1278
|
}
|
|
1272
1279
|
export interface ErrorOptions {
|
|
1273
1280
|
message: string;
|
|
@@ -1409,6 +1416,28 @@ export declare enum SuccessScreenType {
|
|
|
1409
1416
|
PAYMENT_METHOD = "PAYMENT_METHOD",
|
|
1410
1417
|
CHECK = "CHECK"
|
|
1411
1418
|
}
|
|
1419
|
+
export interface StripeAchCustomerDetails {
|
|
1420
|
+
emailAddress: string;
|
|
1421
|
+
firstName: string;
|
|
1422
|
+
lastName: string;
|
|
1423
|
+
}
|
|
1424
|
+
export interface StripeOptions {
|
|
1425
|
+
publishableKey: string;
|
|
1426
|
+
}
|
|
1427
|
+
export interface StripeOptionsDropInWithFullMandateText {
|
|
1428
|
+
mandateData: {
|
|
1429
|
+
fullMandateText: string;
|
|
1430
|
+
merchantName?: never;
|
|
1431
|
+
};
|
|
1432
|
+
}
|
|
1433
|
+
export interface StripeOptionsDropInTextProvidedByPrimer {
|
|
1434
|
+
mandateData: {
|
|
1435
|
+
merchantName: string;
|
|
1436
|
+
fullMandateText?: never;
|
|
1437
|
+
};
|
|
1438
|
+
}
|
|
1439
|
+
export declare const isStripeOptionsDropInWithFullMandateText: (stripeOptions: StripeOptionsDropInWithFullMandateText | StripeOptionsDropInTextProvidedByPrimer) => stripeOptions is StripeOptionsDropInWithFullMandateText;
|
|
1440
|
+
export type StripeOptionsDropIn = StripeOptionsDropInWithFullMandateText | StripeOptionsDropInTextProvidedByPrimer;
|
|
1412
1441
|
export interface CardDetails {
|
|
1413
1442
|
last4Digits: string;
|
|
1414
1443
|
cardNumber: string;
|
|
@@ -1685,13 +1714,16 @@ export interface onBeforePaymentCreateHandler {
|
|
|
1685
1714
|
export interface OnCheckoutFailHandler {
|
|
1686
1715
|
showErrorMessage: (errorMessage?: string) => void;
|
|
1687
1716
|
}
|
|
1717
|
+
export interface StripeAchPaymentHandlers {
|
|
1718
|
+
onCheckoutComplete?: () => void;
|
|
1719
|
+
}
|
|
1688
1720
|
export interface PaymentHandlers {
|
|
1689
1721
|
onBeforePaymentCreate?: (data: {
|
|
1690
1722
|
paymentMethodType?: PaymentMethodType;
|
|
1691
1723
|
}, handler: onBeforePaymentCreateHandler) => void;
|
|
1692
1724
|
onPaymentCreationStart?: () => void;
|
|
1693
1725
|
onCheckoutComplete?: (data: {
|
|
1694
|
-
payment: Payment;
|
|
1726
|
+
payment: Payment | null;
|
|
1695
1727
|
}) => void;
|
|
1696
1728
|
onCheckoutFail?: (error: PrimerClientError, data: {
|
|
1697
1729
|
payment?: Payment;
|
|
@@ -1757,6 +1789,7 @@ export interface SinglePaymentMethodCheckoutOptions extends TokenizationHandlers
|
|
|
1757
1789
|
applePay?: Omit<ApplePayOptions, "container">;
|
|
1758
1790
|
klarna?: KlarnaOptions;
|
|
1759
1791
|
directDebit?: DirectDebitOptions;
|
|
1792
|
+
stripe?: StripeOptions;
|
|
1760
1793
|
paymentHandling?: PaymentHandling;
|
|
1761
1794
|
}
|
|
1762
1795
|
export interface VaultManagerOptions extends WithAllowedCardNetworks {
|
|
@@ -1802,6 +1835,7 @@ export interface UniversalCheckoutOptions extends TokenizationHandlers, PaymentH
|
|
|
1802
1835
|
klarna?: KlarnaOptions;
|
|
1803
1836
|
directDebit?: DirectDebitOptions;
|
|
1804
1837
|
giftCard?: CustomizablePaymentMethodButton;
|
|
1838
|
+
stripe?: StripeOptionsDropIn;
|
|
1805
1839
|
paymentHandling?: PaymentHandling;
|
|
1806
1840
|
advanced?: AdvancedOptions;
|
|
1807
1841
|
}
|
|
@@ -1817,6 +1851,7 @@ export interface HeadlessUniversalCheckoutOptions extends TokenizationHandlers,
|
|
|
1817
1851
|
klarna?: KlarnaOptions;
|
|
1818
1852
|
directDebit?: DirectDebitOptions;
|
|
1819
1853
|
giftCard?: CustomizablePaymentMethodButton;
|
|
1854
|
+
stripe?: StripeOptions;
|
|
1820
1855
|
onAvailablePaymentMethodsLoad: (paymentMethods: PaymentMethodInfo[]) => void;
|
|
1821
1856
|
}
|
|
1822
1857
|
export type WithAllowedCardNetworks = {
|
|
@@ -1916,13 +1951,21 @@ export interface IKlarnaPaymentMethodManager {
|
|
|
1916
1951
|
addEventListener(event: EventTypes, callback: EventListener): void;
|
|
1917
1952
|
getPaymentMethod(): void;
|
|
1918
1953
|
}
|
|
1919
|
-
export
|
|
1954
|
+
export interface IAchPaymentMethodManager {
|
|
1955
|
+
start(paymentDetails: StripeAchCustomerDetails): Promise<Validation | void>;
|
|
1956
|
+
collectBankAccountDetails(): Promise<void>;
|
|
1957
|
+
confirmMandate(): Promise<void>;
|
|
1958
|
+
declineMandate(): Promise<void>;
|
|
1959
|
+
getPaymentMethod(): void;
|
|
1960
|
+
}
|
|
1961
|
+
export type PaymentMethodManagers = ICardPaymentMethodManager | INativePaymentMethodManager | IRedirectPaymentMethodManager | IFormWithRedirectPaymentMethodManager<BankIssuer> | IKlarnaPaymentMethodManager | IAchPaymentMethodManager;
|
|
1920
1962
|
export declare enum HeadlessManagerType {
|
|
1921
1963
|
CARD = "CARD",
|
|
1922
1964
|
NATIVE = "NATIVE",
|
|
1923
1965
|
REDIRECT = "REDIRECT",
|
|
1924
1966
|
FORM_WITH_REDIRECT = "FORM_WITH_REDIRECT",
|
|
1925
|
-
KLARNA = "KLARNA"
|
|
1967
|
+
KLARNA = "KLARNA",
|
|
1968
|
+
ACH = "ACH"
|
|
1926
1969
|
}
|
|
1927
1970
|
export type PaymentMethodInfo = {
|
|
1928
1971
|
type: PaymentMethodType;
|
|
@@ -1987,6 +2030,9 @@ export interface FormWithRedirectPaymentMethodManagerOptions {
|
|
|
1987
2030
|
export interface KlarnaPaymentMethodManagerOptions {
|
|
1988
2031
|
onPaymentMethodCategoriesChange?: (paymentMethodCategories: KlarnaPaymentMethodCategory[]) => void;
|
|
1989
2032
|
}
|
|
2033
|
+
export interface AchPaymentMethodManagerOptions {
|
|
2034
|
+
onCollectBankAccountDetailsComplete?: () => void;
|
|
2035
|
+
}
|
|
1990
2036
|
export type KlarnaPaymentMethodCategory = {
|
|
1991
2037
|
id: string;
|
|
1992
2038
|
name: string;
|
|
@@ -2008,7 +2054,8 @@ export type PaymentMethodManagerOptions = CardPaymentMethodManagerOptions | Form
|
|
|
2008
2054
|
export interface PrimerHeadlessCheckout {
|
|
2009
2055
|
createPaymentMethodManager(type: "PAYMENT_CARD", options?: PaymentMethodManagerOptions): Promise<ICardPaymentMethodManager | null>;
|
|
2010
2056
|
createPaymentMethodManager(type: PaymentMethodType.PAYPAL | "PAYPAL" | "GOOGLE_PAY" | "APPLE_PAY", options?: PaymentMethodManagerOptions): Promise<INativePaymentMethodManager | null>;
|
|
2011
|
-
createPaymentMethodManager(type:
|
|
2057
|
+
createPaymentMethodManager(type: "ADYEN_IDEAL", options?: FormWithRedirectPaymentMethodManagerOptions): Promise<IFormWithRedirectPaymentMethodManager<BankIssuer> | null>;
|
|
2058
|
+
createPaymentMethodManager(type: "STRIPE_ACH", options?: AchPaymentMethodManagerOptions): Promise<IAchPaymentMethodManager | null>;
|
|
2012
2059
|
createPaymentMethodManager(type: PaymentMethodType, options?: PaymentMethodManagerOptions): Promise<IRedirectPaymentMethodManager | null>;
|
|
2013
2060
|
createVaultManager(): HeadlessVaultManager;
|
|
2014
2061
|
configure: (options: HeadlessUniversalCheckoutOptions) => void;
|