tf-checkout-react 1.3.50 → 1.4.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/dist/api/index.d.ts +6 -1
- package/dist/components/common/Loader.d.ts +1 -1
- package/dist/components/idVerificationContainer/constants.d.ts +2 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/seatMapContainer/SeatMapComponent.d.ts +8 -0
- package/dist/components/seatMapContainer/TicketsSection.d.ts +9 -0
- package/dist/components/seatMapContainer/addToCart.d.ts +21 -0
- package/dist/components/seatMapContainer/index.d.ts +2 -0
- package/dist/components/seatMapContainer/utils.d.ts +14 -0
- package/dist/components/stripePayment/index.d.ts +2 -2
- package/dist/components/ticketsContainer/TicketRow.d.ts +3 -1
- package/dist/components/ticketsContainer/TicketsSection.d.ts +5 -1
- package/dist/components/ticketsContainer/index.d.ts +6 -2
- package/dist/index.d.ts +1 -0
- package/dist/tf-checkout-react.cjs.development.js +1441 -130
- package/dist/tf-checkout-react.cjs.development.js.map +1 -1
- package/dist/tf-checkout-react.cjs.production.min.js +1 -1
- package/dist/tf-checkout-react.cjs.production.min.js.map +1 -1
- package/dist/tf-checkout-react.esm.js +1442 -132
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/dist/tf-checkout-styles.css +1 -1
- package/dist/types/order-data.d.ts +3 -0
- package/dist/utils/createCheckoutDataBodyWithDefaultHolder.d.ts +9 -2
- package/package.json +12 -4
- package/src/.d.ts +4 -3
- package/src/api/index.ts +89 -6
- package/src/components/billing-info-container/index.tsx +115 -103
- package/src/components/billing-info-container/utils.ts +1 -2
- package/src/components/common/Loader.tsx +6 -8
- package/src/components/confirmationContainer/index.tsx +11 -9
- package/src/components/idVerificationContainer/constants.ts +2 -0
- package/src/components/idVerificationContainer/index.tsx +54 -13
- package/src/components/index.ts +2 -1
- package/src/components/orderDetailsContainer/index.tsx +54 -23
- package/src/components/paymentContainer/index.tsx +167 -33
- package/src/components/seatMapContainer/SeatMapComponent.tsx +73 -0
- package/src/components/seatMapContainer/TicketsSection.tsx +254 -0
- package/src/components/seatMapContainer/addToCart.ts +82 -0
- package/src/components/seatMapContainer/index.tsx +408 -0
- package/src/components/seatMapContainer/utils.ts +138 -0
- package/src/components/stripePayment/index.tsx +23 -18
- package/src/components/ticketsContainer/TicketRow.tsx +28 -13
- package/src/components/ticketsContainer/TicketsSection.tsx +85 -2
- package/src/components/ticketsContainer/index.tsx +57 -12
- package/src/components/ticketsContainer/style.css +0 -3
- package/src/hooks/usePixel.ts +35 -1
- package/src/index.ts +2 -1
- package/src/types/order-data.ts +3 -0
- package/src/types/seatMap.d.ts +154 -0
- package/src/utils/createCheckoutDataBodyWithDefaultHolder.ts +6 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
.button-container{display:flex;justify-content:center;padding:20px}.billing-info-container{margin:0 auto;max-width:800px}.billing-info-container .is-half{width:49%}.billing-info-container p{color:#000}.billing-info-container .main-header{font-size:2rem;font-weight:600}.billing-info-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.billing-info-container__singleField{margin-top:15px}button{margin-top:10px}.account-actions-block{color:#182026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif;margin-top:10px}.MuiButtonBase-root.MuiButton-root,.MuiButtonBase-root.MuiButton-root:hover,.login-register-button{background-color:#212529;border:#f28051;border-radius:5px;color:#fff;cursor:pointer;display:block;font-family:Inter-Bold;font-size:26px;font-weight:700;line-height:1.15;margin-top:10px;min-height:46px;outline:none;overflow:hidden;padding:14px 12px 12px;position:relative;text-align:center;text-overflow:ellipsis;text-transform:uppercase;width:49%}.logo-image-container{margin-top:5px;text-align:center;width:49%}.logo-image-container img{height:30px}.login-block{align-items:center;display:flex;flex-direction:column}.login-register-button:hover{background-color:#505050!important;border-color:#505050!important}.login-register-block{display:flex;justify-content:space-between}@media only screen and (max-width:820px){.billing-info-container{width:90%}.billing-info-container .main-header{font-size:1.5rem}}.email-checking{margin-bottom:15px}.forgot-password-modal .forgot-password-container{margin:0 auto;max-width:800px}.forgot-password-modal .title{background-color:#fff;font-family:Inter;font-size:18px;font-weight:700}.forgot-password-modal .forgot-password-container__singleField{margin-top:15px}.forgot-password-modal .forgot-password-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:10px;outline:none;padding:10px;text-transform:uppercase;width:100%}.forgot-password-modal .forgot-password-action-button button:hover:enabled{background-color:#505050;border-color:#505050}.forgot-password-modal .login{margin-top:10px;text-align:center}.forgot-password-modal .login span{cursor:pointer}.forgot-password-modal .login span:hover{text-decoration:underline}.forgot-password-modal button[disabled]{cursor:unset;opacity:.7}.modal-title{align-items:center;background-color:#fff;display:flex;font-family:Inter;font-size:18px;font-weight:700;height:49px;line-height:22px;padding-left:25px;position:relative}.login-modal-body{padding:15px 25px}.login-modal-body input{background:#fff!important}.login-modal-body__email,.login-modal-body__password{margin-bottom:20px}.login-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin:10px 0;outline:none;padding:10px;width:100%}.login-action-button button:hover{background-color:#505050;border-color:#505050}.server_auth__error{color:red;font-family:Inter;font-size:12px;font-style:normal;padding-left:25px;padding-top:15px}.info-text-for-login{font-size:14px;margin-bottom:4px;padding-left:10px}.forgot-password{text-align:center}.forgot-password span{cursor:pointer}.forgot-password span:hover{text-decoration:underline}.signup-modal .signup-container{margin:0 auto;max-width:800px}.signup-modal .title{background-color:#fff;font-family:Inter;font-size:18px;font-weight:700}.signup-modal .signup-container .is-half{width:49%}.signup-modal .signup-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.signup-modal .signup-container__singleField{margin-top:15px}.signup-modal button{margin-top:10px}.signup-modal .signup-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:10px;outline:none;padding:10px;text-transform:uppercase;width:100%}.signup-modal .signup-action-button button:hover:enabled{background-color:#505050;border-color:#505050}.signup-modal .login{margin-top:10px;text-align:center}.signup-modal .login span{cursor:pointer}.signup-modal .login span:hover{text-decoration:underline}.signup-modal button[disabled]{cursor:unset;opacity:.7}.timer{background-color:#000;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=);background-position:15px;background-repeat:no-repeat;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 12px #999;-webkit-box-shadow:0 0 12px #999;box-shadow:0 0 12px #999;color:#fff;margin:0 0 6px;max-width:300px;overflow:hidden;padding:15px 15px 15px 50px;pointer-events:auto;position:absolute;right:15px;width:300px}.timer .close-icon{cursor:pointer;display:flex;position:absolute;right:10px;top:10px}.timer .countdown{font-weight:700;margin-top:10px}.payment_page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif}.payment_page .order_info_section{padding:15px 0}.payment_page .order_info_section .order_info_block{padding-bottom:15px;padding-top:15px}.payment_page .order_info_section .order_info_block .field-underline{border-bottom:1px solid #000;padding-bottom:15px}.payment_page .order_info_section .order_info_block .order_info_title{font-size:14px;font-weight:700;padding-bottom:3px}.payment_page .order_info_section .order_info_block .order_info_text{font-size:16px;line-height:1.15;outline:none}.payment_page .MuiBox-root{margin-left:auto;margin-right:auto;padding:20px;text-align:center}.payment_page .payment_info_label{padding:20px 0;text-align:center}.payment_page .payment_form{color:#fff;padding:20px}.payment_page .payment_form input,.payment_page .payment_form label{color:#fff}.payment_page .payment_button{padding-top:20px;text-align:center}.card_form_inner{background:#232323;border-radius:8px;margin:0 auto 20px;min-width:325px;padding:15px;width:50%}.card_form_inner .card_label_text{color:#fff}.card_form_inner .StripeElement{margin:5px 0 10px}.card_label_text{color:#fff}.payment_button{padding-top:15px;text-align:center}.payment_button button{background-color:#212529;border-radius:8px;color:#fff;cursor:pointer;font-size:26px;padding:15px 30px;transition:opacity .5s;width:200px}.payment_button button:hover{opacity:.7}.disabled-payment-button button{opacity:.3;pointer-events:none;user-select:none}.checkout_error_block{color:#e53935;font-weight:600;padding:15px 0}.zip_element p{margin-bottom:0}.zip_element input{background-color:#000;border:none;color:#fff;font-size:18px;margin-top:5px;outline:none;width:100%}.confirmation-page{margin:0 auto;max-width:1024px}.confirmation-page button{margin-top:inherit}.confirmation-page .strong-text{font-weight:700}.confirmation-page .title{color:#333;font-size:24px;font-weight:600}.confirmation-page .share-message-section{background:#dff0d8;border:1px solid #d6e9c6;border-radius:5px;color:#2c7221;display:flex;flex-direction:column;margin:20px 0;padding:15px}.confirmation-page .main{font-size:15px;font-weight:700}.confirmation-page .helper,.confirmation-page .main{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif}.confirmation-page .helper{font-size:14px;margin-top:5px}.confirmation-page .referral_text_image_section{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:20px 0}.confirmation-page .referral_text_section{margin:10px}.confirmation-page .referral_title_text{color:#f08057;font-size:28px;padding-bottom:10px}.confirmation-page .referral_text{font-size:18px}.confirmation-page .referral_text_image_section img{margin:10px;max-width:200px}.confirmation-page .share_wrapper{column-gap:5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:10px}.confirmation-page .invitation_title{font-size:22px;padding-bottom:12px;padding-top:12px}.confirmation-page .share_section{display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 -10px}.confirmation-page .invitation_section{flex:1 1;padding:0 5px}.confirmation-page .share_buttons{display:grid;flex-wrap:wrap;margin:0 -7px}.confirmation-page .convenient_buttons{margin-top:10px}.confirmation-page .social-media-btns{grid-gap:5px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.confirmation-page .sharing-btn{background-color:#000;flex:1 1;min-width:130px}.confirmation-page .sharing-btn a{text-decoration:none}.confirmation-page .share-by-link{background:#000;color:#fff;padding:10px}.confirmation-page .share-by-link.label{margin:0;padding:0;text-align:left}.confirmation-page .share-btn-inner{align-items:center;background-color:#000;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;padding:0;text-align:left;width:100%}.confirmation-page .share-input{background-color:#fff;border:none;outline:none;padding:5px;text-align:left;width:300px}.confirmation-page .share-text{display:block;font-size:13px;font-weight:600;padding-top:8px;width:100%}.confirmation-page .pricing-section_wrapper{background:#e3e3e3;border:1px solid #dcdcdc;display:grid;grid-template-columns:1fr 1fr;margin:10px 0;padding:15px}.confirmation-page .pricing-section_label{font-weight:600}.confirmation-page .pricing-section_sublabel{font-size:14px;font-weight:100}.confirmation-page .pricing-section_price{font-weight:600;text-align:right}.confirmation-page .share-by-link-copy-icon{align-items:center;background-color:#32325d;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;margin-left:8px;padding:10px;transition:all .15s ease}.confirmation-page .share-by-link-copy-icon:hover{background-color:#505050}.confirmation-page .share-by-link-copy-icon img{width:14px}.confirmation-page .social-media-sharing{background-color:#000;color:#fff;cursor:pointer;padding:10px;text-align:center}.confirmation-page .share-icon{border-radius:4px;display:inline-flex}@media only screen and (max-width:1050px){.confirmation-page .share_wrapper{column-gap:0;display:grid;grid-template-columns:unset;margin:15px}}@media only screen and (max-width:480px){.confirmation-page .social-media-btns{grid-template-columns:unset}.confirmation-page .share-input{width:250px}}body{margin:0;padding:0}.get-tickets-page{width:100%}.event-detail__tier{background-color:#fff;padding:17px 35px 20px}.event-detail__tier-name{color:#000;font-family:Inter-Bold;font-family:Bebas Neue;font-size:.85rem;font-weight:700;letter-spacing:.2em;line-height:1.3;margin-bottom:8px;margin-top:16px;padding-right:20%;text-transform:uppercase}.event-detail__tier-status{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;margin-top:8px;width:100%}.event-detail__tier-status.ticket-button{background-color:#212529;border:3px solid #000;border-radius:0;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.2em;line-height:1.5;margin-bottom:10px;width:200px}.event-tickets-container{align-items:center;display:flex;justify-content:space-between}.event-detail__tier-status.ticket-button.true{background-color:#c1c3c6;border-color:#afb0b1}.event-detail__tier-price{color:#000;font-family:Inter-Bold;font-size:1.5rem;line-height:1;text-align:center}.event-detail__tier-price p{margin:0}.event-detail__tier-price .fees{font-size:14px;margin-top:4px;text-align:left}.event-detail__tier-price .old-price{color:red;font-size:1.3rem;margin-bottom:5px;text-decoration:line-through}.alert-info{align-items:center;background-color:#d9edf7;border:1px solid #bce8f1;border-radius:4px;color:#3a87ad;display:flex;font-size:1em;justify-content:center;margin:0 35px;padding:8px 15px;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.alert-info svg{margin-right:4px}.event-detail__tier-state{color:#30bc9d;font-family:Inter-Bold;font-size:.75rem;font-weight:300;line-height:1;text-align:right;text-transform:uppercase}.event-detail__tier-state .ticket-not-started-message{color:#000;text-align:left;text-transform:none;width:50px}.promo-code-block input{font-size:14px;padding:1px 8px}.book-button{background-color:#212529;border:3px solid #000;border-radius:0;color:#fff;cursor:pointer;display:block;font-size:26px;font-weight:700;height:50px;letter-spacing:.2em;line-height:1.5;margin:25px auto 10px;text-align:center;width:100%}.book-button:hover{background-color:#505050;border-color:#505050}.loader-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.get-tickets-paper::-webkit-scrollbar{width:5px}.get-tickets-paper::-webkit-scrollbar-track{background:#f1f1f1}.get-tickets-paper::-webkit-scrollbar-thumb{background:#888}.get-tickets-paper::-webkit-scrollbar-thumb:hover{background:#555}.get-tickets .get-tickets__selectbox{width:100%}.disabled{pointer-events:none;user-select:none}.hidden{display:none}.event-closed-message{font-family:Bebas Neue;letter-spacing:.5px}.countdown p{margin:0}.countdown .title{font-weight:700}.countdown .message{font-weight:700;margin-top:20px}.waiting-list{padding:17px 35px 20px}.waiting-list .field-item{margin-bottom:30px}.waiting-list .waiting-list-button{width:100%!important}.waiting-list .waiting-list-button:hover{background-color:#505050}.waiting-list .success-message{margin-bottom:15px;text-align:center}.waiting-list .success-message p{margin:0}.waiting-list .no-tickets-text{font-weight:700;text-align:center}.waiting-list .added-success-message{font-size:22px;margin-bottom:10px}.my-ticket{padding:30px}.my-ticket-table{margin-top:30px}.my-ticket .loading{background-color:rgba(0,0,0,.4);height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100%}.my-ticket .event-info,.my-ticket .loading{align-items:center;display:flex}.my-ticket thead th{font-weight:700}.my-ticket .event-info img{margin-right:10px;width:50px}.my-ticket .order-details-button{background-color:#32325d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 14px;transition:all .15s ease}.my-ticket .order-details-button:hover{background-color:#505050}.order-details{margin:0 auto;max-width:940px}.order-details .loading{align-items:center;background-color:rgba(0,0,0,.4);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1400}.order-details .layout-title{font-size:24px;font-weight:400}.order-details .sub-title{font-size:18px;font-weight:400;margin:10px 0}.order-details .order-summary-box{margin-top:30px}.order-details .total-row td,.order-details th{color:#fff;font-weight:700}.order-details .tickets-box{margin-top:30px}.order-details .ticket-add-on-table{background-color:#fcf8e3}.order-details .action-button{background-color:#212529;border:1px solid #fff;border-radius:0;color:#fff;cursor:pointer;display:block;font-family:Bebas Neue;font-size:14px;font-weight:400;line-height:normal;margin-bottom:20px;margin-top:20px;min-height:auto;outline:none;overflow:hidden;padding:12px;position:relative;text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:uppercase;width:max-content}.order-details .download-button:hover{background-color:#505050}.order-details .personal-link{padding:20px 0}.order-details .total-referrer{padding:0 0 20px}.resale-modal .field-box{display:flex;margin-bottom:10px}.resale-modal .field-box .icon{align-items:center;display:flex;height:56px;justify-content:center;min-width:44px}.resale-modal .field-box .empty-box{min-width:44px}.resale-modal .resale-action-button button{background-color:#212529;color:#fff;cursor:pointer;width:100%}.resale-modal .resale-action-button button[disabled]{opacity:.7}.resale-modal .resale-action-button button:hover{background-color:#505050;border-color:#505050;width:100%}.reset-password{margin:0 auto;max-width:300px;padding:14px}.reset-password .title{font-size:20px;font-weight:700}.reset-password .field-item{margin-top:14px}.reset-password .action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:14px;outline:none;padding:10px;text-transform:uppercase;width:100%}.reset-password .action-button button:hover:enabled{background-color:#505050;border-color:#505050}.reset-password .action-button button[disabled]{cursor:unset;opacity:.7}
|
|
1
|
+
.button-container{display:flex;justify-content:center;padding:20px}.billing-info-container{margin:0 auto;max-width:800px}.billing-info-container .is-half{width:49%}.billing-info-container p{color:#000}.billing-info-container .main-header{font-size:2rem;font-weight:600}.billing-info-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.billing-info-container__singleField{margin-top:15px}button{margin-top:10px}.account-actions-block{color:#182026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif;margin-top:10px}.MuiButtonBase-root.MuiButton-root,.MuiButtonBase-root.MuiButton-root:hover,.login-register-button{background-color:#212529;border:#f28051;border-radius:5px;color:#fff;cursor:pointer;display:block;font-family:Inter-Bold;font-size:26px;font-weight:700;line-height:1.15;margin-top:10px;min-height:46px;outline:none;overflow:hidden;padding:14px 12px 12px;position:relative;text-align:center;text-overflow:ellipsis;text-transform:uppercase;width:49%}.logo-image-container{margin-top:5px;text-align:center;width:49%}.logo-image-container img{height:30px}.login-block{align-items:center;display:flex;flex-direction:column}.login-register-button:hover{background-color:#505050!important;border-color:#505050!important}.login-register-block{display:flex;justify-content:space-between}@media only screen and (max-width:820px){.billing-info-container{width:90%}.billing-info-container .main-header{font-size:1.5rem}}.email-checking{margin-bottom:15px}.forgot-password-modal .forgot-password-container{margin:0 auto;max-width:800px}.forgot-password-modal .title{background-color:#fff;font-family:Inter;font-size:18px;font-weight:700}.forgot-password-modal .forgot-password-container__singleField{margin-top:15px}.forgot-password-modal .forgot-password-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:10px;outline:none;padding:10px;text-transform:uppercase;width:100%}.forgot-password-modal .forgot-password-action-button button:hover:enabled{background-color:#505050;border-color:#505050}.forgot-password-modal .login{margin-top:10px;text-align:center}.forgot-password-modal .login span{cursor:pointer}.forgot-password-modal .login span:hover{text-decoration:underline}.forgot-password-modal button[disabled]{cursor:unset;opacity:.7}.modal-title{align-items:center;background-color:#fff;display:flex;font-family:Inter;font-size:18px;font-weight:700;height:49px;line-height:22px;padding-left:25px;position:relative}.login-modal-body{padding:15px 25px}.login-modal-body input{background:#fff!important}.login-modal-body__email,.login-modal-body__password{margin-bottom:20px}.login-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin:10px 0;outline:none;padding:10px;width:100%}.login-action-button button:hover{background-color:#505050;border-color:#505050}.server_auth__error{color:red;font-family:Inter;font-size:12px;font-style:normal;padding-left:25px;padding-top:15px}.info-text-for-login{font-size:14px;margin-bottom:4px;padding-left:10px}.forgot-password{text-align:center}.forgot-password span{cursor:pointer}.forgot-password span:hover{text-decoration:underline}.signup-modal .signup-container{margin:0 auto;max-width:800px}.signup-modal .title{background-color:#fff;font-family:Inter;font-size:18px;font-weight:700}.signup-modal .signup-container .is-half{width:49%}.signup-modal .signup-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.signup-modal .signup-container__singleField{margin-top:15px}.signup-modal button{margin-top:10px}.signup-modal .signup-action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:10px;outline:none;padding:10px;text-transform:uppercase;width:100%}.signup-modal .signup-action-button button:hover:enabled{background-color:#505050;border-color:#505050}.signup-modal .login{margin-top:10px;text-align:center}.signup-modal .login span{cursor:pointer}.signup-modal .login span:hover{text-decoration:underline}.signup-modal button[disabled]{cursor:unset;opacity:.7}.timer{background-color:#000;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=);background-position:15px;background-repeat:no-repeat;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 12px #999;-webkit-box-shadow:0 0 12px #999;box-shadow:0 0 12px #999;color:#fff;margin:0 0 6px;max-width:300px;overflow:hidden;padding:15px 15px 15px 50px;pointer-events:auto;position:absolute;right:15px;width:300px}.timer .close-icon{cursor:pointer;display:flex;position:absolute;right:10px;top:10px}.timer .countdown{font-weight:700;margin-top:10px}.payment_page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif}.payment_page .order_info_section{padding:15px 0}.payment_page .order_info_section .order_info_block{padding-bottom:15px;padding-top:15px}.payment_page .order_info_section .order_info_block .field-underline{border-bottom:1px solid #000;padding-bottom:15px}.payment_page .order_info_section .order_info_block .order_info_title{font-size:14px;font-weight:700;padding-bottom:3px}.payment_page .order_info_section .order_info_block .order_info_text{font-size:16px;line-height:1.15;outline:none}.payment_page .MuiBox-root{margin-left:auto;margin-right:auto;padding:20px;text-align:center}.payment_page .payment_info_label{padding:20px 0;text-align:center}.payment_page .payment_form{color:#fff;padding:20px}.payment_page .payment_form input,.payment_page .payment_form label{color:#fff}.payment_page .payment_button{padding-top:20px;text-align:center}.card_form_inner{background:#232323;border-radius:8px;margin:0 auto 20px;min-width:325px;padding:15px;width:50%}.card_form_inner .card_label_text{color:#fff}.card_form_inner .StripeElement{margin:5px 0 10px}.card_label_text{color:#fff}.payment_button{padding-top:15px;text-align:center}.payment_button button{background-color:#212529;border-radius:8px;color:#fff;cursor:pointer;font-size:26px;padding:15px 30px;transition:opacity .5s;width:200px}.payment_button button:hover{opacity:.7}.disabled-payment-button button{opacity:.3;pointer-events:none;user-select:none}.checkout_error_block{color:#e53935;font-weight:600;padding:15px 0}.zip_element p{margin-bottom:0}.zip_element input{background-color:#000;border:none;color:#fff;font-size:18px;margin-top:5px;outline:none;width:100%}.confirmation-page{margin:0 auto;max-width:1024px}.confirmation-page button{margin-top:inherit}.confirmation-page .strong-text{font-weight:700}.confirmation-page .title{color:#333;font-size:24px;font-weight:600}.confirmation-page .share-message-section{background:#dff0d8;border:1px solid #d6e9c6;border-radius:5px;color:#2c7221;display:flex;flex-direction:column;margin:20px 0;padding:15px}.confirmation-page .main{font-size:15px;font-weight:700}.confirmation-page .helper,.confirmation-page .main{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Icons16,sans-serif}.confirmation-page .helper{font-size:14px;margin-top:5px}.confirmation-page .referral_text_image_section{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:20px 0}.confirmation-page .referral_text_section{margin:10px}.confirmation-page .referral_title_text{color:#f08057;font-size:28px;padding-bottom:10px}.confirmation-page .referral_text{font-size:18px}.confirmation-page .referral_text_image_section img{margin:10px;max-width:200px}.confirmation-page .share_wrapper{column-gap:5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:10px}.confirmation-page .invitation_title{font-size:22px;padding-bottom:12px;padding-top:12px}.confirmation-page .share_section{display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 -10px}.confirmation-page .invitation_section{flex:1 1;padding:0 5px}.confirmation-page .share_buttons{display:grid;flex-wrap:wrap;margin:0 -7px}.confirmation-page .convenient_buttons{margin-top:10px}.confirmation-page .social-media-btns{grid-gap:5px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.confirmation-page .sharing-btn{background-color:#000;flex:1 1;min-width:130px}.confirmation-page .sharing-btn a{text-decoration:none}.confirmation-page .share-by-link{background:#000;color:#fff;padding:10px}.confirmation-page .share-by-link.label{margin:0;padding:0;text-align:left}.confirmation-page .share-btn-inner{align-items:center;background-color:#000;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;padding:0;text-align:left;width:100%}.confirmation-page .share-input{background-color:#fff;border:none;outline:none;padding:5px;text-align:left;width:300px}.confirmation-page .share-text{display:block;font-size:13px;font-weight:600;padding-top:8px;width:100%}.confirmation-page .pricing-section_wrapper{background:#e3e3e3;border:1px solid #dcdcdc;display:grid;grid-template-columns:1fr 1fr;margin:10px 0;padding:15px}.confirmation-page .pricing-section_label{font-weight:600}.confirmation-page .pricing-section_sublabel{font-size:14px;font-weight:100}.confirmation-page .pricing-section_price{font-weight:600;text-align:right}.confirmation-page .share-by-link-copy-icon{align-items:center;background-color:#32325d;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;margin-left:8px;padding:10px;transition:all .15s ease}.confirmation-page .share-by-link-copy-icon:hover{background-color:#505050}.confirmation-page .share-by-link-copy-icon img{width:14px}.confirmation-page .social-media-sharing{background-color:#000;color:#fff;cursor:pointer;padding:10px;text-align:center}.confirmation-page .share-icon{border-radius:4px;display:inline-flex}@media only screen and (max-width:1050px){.confirmation-page .share_wrapper{column-gap:0;display:grid;grid-template-columns:unset;margin:15px}}@media only screen and (max-width:480px){.confirmation-page .social-media-btns{grid-template-columns:unset}.confirmation-page .share-input{width:250px}}body{margin:0;padding:0}.event-detail__tier{background-color:#fff;padding:17px 35px 20px}.event-detail__tier-name{color:#000;font-family:Inter-Bold;font-family:Bebas Neue;font-size:.85rem;font-weight:700;letter-spacing:.2em;line-height:1.3;margin-bottom:8px;margin-top:16px;padding-right:20%;text-transform:uppercase}.event-detail__tier-status{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;margin-top:8px;width:100%}.event-detail__tier-status.ticket-button{background-color:#212529;border:3px solid #000;border-radius:0;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.2em;line-height:1.5;margin-bottom:10px;width:200px}.event-tickets-container{align-items:center;display:flex;justify-content:space-between}.event-detail__tier-status.ticket-button.true{background-color:#c1c3c6;border-color:#afb0b1}.event-detail__tier-price{color:#000;font-family:Inter-Bold;font-size:1.5rem;line-height:1;text-align:center}.event-detail__tier-price p{margin:0}.event-detail__tier-price .fees{font-size:14px;margin-top:4px;text-align:left}.event-detail__tier-price .old-price{color:red;font-size:1.3rem;margin-bottom:5px;text-decoration:line-through}.alert-info{align-items:center;background-color:#d9edf7;border:1px solid #bce8f1;border-radius:4px;color:#3a87ad;display:flex;font-size:1em;justify-content:center;margin:0 35px;padding:8px 15px;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.alert-info svg{margin-right:4px}.event-detail__tier-state{color:#30bc9d;font-family:Inter-Bold;font-size:.75rem;font-weight:300;line-height:1;text-align:right;text-transform:uppercase}.event-detail__tier-state .ticket-not-started-message{color:#000;text-align:left;text-transform:none;width:50px}.promo-code-block input{font-size:14px;padding:1px 8px}.book-button{background-color:#212529;border:3px solid #000;border-radius:0;color:#fff;cursor:pointer;display:block;font-size:26px;font-weight:700;height:50px;letter-spacing:.2em;line-height:1.5;margin:25px auto 10px;text-align:center;width:100%}.book-button:hover{background-color:#505050;border-color:#505050}.loader-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.get-tickets-paper::-webkit-scrollbar{width:5px}.get-tickets-paper::-webkit-scrollbar-track{background:#f1f1f1}.get-tickets-paper::-webkit-scrollbar-thumb{background:#888}.get-tickets-paper::-webkit-scrollbar-thumb:hover{background:#555}.get-tickets .get-tickets__selectbox{width:100%}.disabled{pointer-events:none;user-select:none}.hidden{display:none}.event-closed-message{font-family:Bebas Neue;letter-spacing:.5px}.countdown p{margin:0}.countdown .title{font-weight:700}.countdown .message{font-weight:700;margin-top:20px}.waiting-list{padding:17px 35px 20px}.waiting-list .field-item{margin-bottom:30px}.waiting-list .waiting-list-button{width:100%!important}.waiting-list .waiting-list-button:hover{background-color:#505050}.waiting-list .success-message{margin-bottom:15px;text-align:center}.waiting-list .success-message p{margin:0}.waiting-list .no-tickets-text{font-weight:700;text-align:center}.waiting-list .added-success-message{font-size:22px;margin-bottom:10px}.my-ticket{padding:30px}.my-ticket-table{margin-top:30px}.my-ticket .loading{background-color:rgba(0,0,0,.4);height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100%}.my-ticket .event-info,.my-ticket .loading{align-items:center;display:flex}.my-ticket thead th{font-weight:700}.my-ticket .event-info img{margin-right:10px;width:50px}.my-ticket .order-details-button{background-color:#32325d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 14px;transition:all .15s ease}.my-ticket .order-details-button:hover{background-color:#505050}.order-details{margin:0 auto;max-width:940px}.order-details .loading{align-items:center;background-color:rgba(0,0,0,.4);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1400}.order-details .layout-title{font-size:24px;font-weight:400}.order-details .sub-title{font-size:18px;font-weight:400;margin:10px 0}.order-details .order-summary-box{margin-top:30px}.order-details .total-row td,.order-details th{color:#fff;font-weight:700}.order-details .tickets-box{margin-top:30px}.order-details .ticket-add-on-table{background-color:#fcf8e3}.order-details .action-button{background-color:#212529;border:1px solid #fff;border-radius:0;color:#fff;cursor:pointer;display:block;font-family:Bebas Neue;font-size:14px;font-weight:400;line-height:normal;margin-bottom:20px;margin-top:20px;min-height:auto;outline:none;overflow:hidden;padding:12px;position:relative;text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:uppercase;width:max-content}.order-details .download-button:hover{background-color:#505050}.order-details .personal-link{padding:20px 0}.order-details .total-referrer{padding:0 0 20px}.resale-modal .field-box{display:flex;margin-bottom:10px}.resale-modal .field-box .icon{align-items:center;display:flex;height:56px;justify-content:center;min-width:44px}.resale-modal .field-box .empty-box{min-width:44px}.resale-modal .resale-action-button button{background-color:#212529;color:#fff;cursor:pointer;width:100%}.resale-modal .resale-action-button button[disabled]{opacity:.7}.resale-modal .resale-action-button button:hover{background-color:#505050;border-color:#505050;width:100%}.reset-password{margin:0 auto;max-width:300px;padding:14px}.reset-password .title{font-size:20px;font-weight:700}.reset-password .field-item{margin-top:14px}.reset-password .action-button button{background-color:#212529;border:none;border-radius:0;color:#fff;cursor:pointer;font-size:26px;font-weight:600;height:45px;line-height:18px;margin-top:14px;outline:none;padding:10px;text-transform:uppercase;width:100%}.reset-password .action-button button:hover:enabled{background-color:#505050;border-color:#505050}.reset-password .action-button button[disabled]{cursor:unset;opacity:.7}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { IAddOn } from './add_on';
|
|
2
2
|
export interface IOrderData {
|
|
3
|
+
id: string;
|
|
3
4
|
product_name: string;
|
|
4
5
|
ticketType: string;
|
|
5
6
|
quantity: string;
|
|
6
7
|
price: string;
|
|
7
8
|
total: string;
|
|
8
9
|
currency: string;
|
|
10
|
+
guest_count: string;
|
|
11
|
+
pay_now: string;
|
|
9
12
|
add_ons: IAddOn[];
|
|
10
13
|
}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
|
+
declare type Type1 = string | number | null | undefined;
|
|
1
2
|
interface ICheckoutBody {
|
|
2
3
|
attributes: {
|
|
3
|
-
[key: string]:
|
|
4
|
+
[key: string]: Type1 | Record<string | number, Type1> | Array<Type1 | IticketHolder>;
|
|
4
5
|
};
|
|
5
6
|
}
|
|
7
|
+
interface IticketHolder {
|
|
8
|
+
first_name?: string;
|
|
9
|
+
last_name?: string;
|
|
10
|
+
phone?: string;
|
|
11
|
+
email?: string;
|
|
12
|
+
}
|
|
6
13
|
interface IUserCredentialsValues {
|
|
7
14
|
emailLogged?: string;
|
|
8
15
|
firstNameLogged?: string;
|
|
9
16
|
lastNameLogged?: string;
|
|
10
17
|
}
|
|
11
|
-
export declare const createCheckoutDataBodyWithDefaultHolder: (ticketsQuantity: number, logedInValues:
|
|
18
|
+
export declare const createCheckoutDataBodyWithDefaultHolder: (ticketsQuantity: number, logedInValues: Record<string, string | undefined>, includeDob?: boolean, userCredentials?: IUserCredentialsValues) => ICheckoutBody;
|
|
12
19
|
export {};
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.
|
|
2
|
+
"version": "1.4.0",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"typings": "dist/index.d.ts",
|
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
"analyze": "size-limit --why",
|
|
21
21
|
"release:beta": "npm version $(semver $(npm info $(npm info . name) version) -i prerelease --preid beta)",
|
|
22
22
|
"release:patch": "npm version $(semver $(npm info $(npm info . name) version) -i patch)",
|
|
23
|
-
"release:minor": "npm version $(semver $(npm info $(npm info . name) version) -i minor)"
|
|
23
|
+
"release:minor": "npm version $(semver $(npm info $(npm info . name) version) -i minor)",
|
|
24
|
+
"start-example": "PORT=3002 parcel example/index.html --dist-dir example-dist --no-cache"
|
|
24
25
|
},
|
|
25
26
|
"peerDependencies": {
|
|
26
27
|
"react": ">=16"
|
|
@@ -67,6 +68,8 @@
|
|
|
67
68
|
"eslint-plugin-unused-imports": "^2.0.0",
|
|
68
69
|
"eslint-webpack-plugin": "^3.2.0",
|
|
69
70
|
"husky": "^7.0.4",
|
|
71
|
+
"parcel": "^2.8.2",
|
|
72
|
+
"process": "^0.11.10",
|
|
70
73
|
"react": "^17.0.2",
|
|
71
74
|
"react-dom": "^17.0.2",
|
|
72
75
|
"rollup-plugin-postcss": "^4.0.1",
|
|
@@ -79,7 +82,9 @@
|
|
|
79
82
|
"dependencies": {
|
|
80
83
|
"@emotion/react": "^11.7.0",
|
|
81
84
|
"@emotion/styled": "^11.6.0",
|
|
85
|
+
"@fortawesome/fontawesome-svg-core": "^6.1.1",
|
|
82
86
|
"@mui/material": "^5.2.2",
|
|
87
|
+
"@mui/private-theming": "^5.11.1",
|
|
83
88
|
"@mui/styles": "^5.2.2",
|
|
84
89
|
"@mui/x-date-pickers": "^5.0.1",
|
|
85
90
|
"@stripe/react-stripe-js": "^1.6.0",
|
|
@@ -98,7 +103,10 @@
|
|
|
98
103
|
"react-countdown": "^2.3.2",
|
|
99
104
|
"react-inlinesvg": "^2.3.0",
|
|
100
105
|
"react-share": "^4.4.0",
|
|
101
|
-
"
|
|
102
|
-
"yup": "^0.32.11"
|
|
106
|
+
"tf-seat-map-view": "9.4.7-beta.20",
|
|
107
|
+
"yup": "^0.32.11",
|
|
108
|
+
"react-app-polyfill": "^1.0.0",
|
|
109
|
+
"react-router-dom": "^6.0.2",
|
|
110
|
+
"rollup-plugin-svg": "^2.0.0"
|
|
103
111
|
}
|
|
104
112
|
}
|
package/src/.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
declare module '*.css'
|
|
2
|
-
declare module '*.png'
|
|
3
|
-
declare module '*.svg';
|
|
1
|
+
declare module '*.css'
|
|
2
|
+
declare module '*.png'
|
|
3
|
+
declare module '*.svg';
|
|
4
|
+
declare module 'tf-seat-map-view'
|
package/src/api/index.ts
CHANGED
|
@@ -87,7 +87,7 @@ publicRequest.interceptors.request.use((config: AxiosRequestConfig) => {
|
|
|
87
87
|
config.headers = updatedHeaders
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
const additionalCookiesHeaderValue =
|
|
90
|
+
const additionalCookiesHeaderValue = document.cookie ?? ''
|
|
91
91
|
if (additionalCookiesHeaderValue !== '') {
|
|
92
92
|
const updatedHeaders = {
|
|
93
93
|
...config.headers,
|
|
@@ -189,7 +189,7 @@ export function getEvent(id: string | number, pk?: string) {
|
|
|
189
189
|
|
|
190
190
|
export function getTickets(
|
|
191
191
|
id: string | number,
|
|
192
|
-
promoCode
|
|
192
|
+
promoCode?: string,
|
|
193
193
|
pk?: string
|
|
194
194
|
) {
|
|
195
195
|
const invitationHash = getQueryVariable('invitation-hash')
|
|
@@ -204,10 +204,10 @@ export function getTickets(
|
|
|
204
204
|
params,
|
|
205
205
|
headers: promoCode
|
|
206
206
|
? {
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
207
|
+
...ttfHeaders,
|
|
208
|
+
'Promotion-Event': String(id),
|
|
209
|
+
'Promotion-Code': promoCode,
|
|
210
|
+
}
|
|
211
211
|
: { ...ttfHeaders },
|
|
212
212
|
})
|
|
213
213
|
.catch(error => {
|
|
@@ -414,6 +414,80 @@ export const getCheckoutPageConfigs = async () => {
|
|
|
414
414
|
return response.data
|
|
415
415
|
}
|
|
416
416
|
|
|
417
|
+
// seat map <--start-->
|
|
418
|
+
|
|
419
|
+
// const makeId = (length = 20) => {
|
|
420
|
+
// let result = ''
|
|
421
|
+
// const characters =
|
|
422
|
+
// 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
|
|
423
|
+
// const charactersLength = characters.length
|
|
424
|
+
// for (let i = 0; i < length; i++) {
|
|
425
|
+
// result += characters.charAt(Math.floor(Math.random() * charactersLength))
|
|
426
|
+
// }
|
|
427
|
+
// return result
|
|
428
|
+
// }
|
|
429
|
+
|
|
430
|
+
export const getSeatMapData = async (
|
|
431
|
+
eventId: string | number
|
|
432
|
+
): Promise<SeatMapDataResponse> => {
|
|
433
|
+
localStorage.setItem('tierId', '')
|
|
434
|
+
const reservedSeatsHash = getQueryVariable('reserved_seats_hash')
|
|
435
|
+
const params = {} as any
|
|
436
|
+
if (reservedSeatsHash) {
|
|
437
|
+
params.reserved_seats_hash = reservedSeatsHash
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
const response: AxiosResponse<
|
|
441
|
+
SeatMapDataResponse,
|
|
442
|
+
AxiosRequestConfig
|
|
443
|
+
> = await publicRequest.get(`v1/event/${eventId}/seat-map-data`, { params })
|
|
444
|
+
return response.data
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
export const getSeatMapStatuses = async (
|
|
448
|
+
eventId: string | number
|
|
449
|
+
): Promise<SeatMapStatusesResponse> => {
|
|
450
|
+
const response = await publicRequest.get(`v1/event/${eventId}/seats/status`)
|
|
451
|
+
return response.data
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
export const reserveSeat = async (
|
|
455
|
+
eventId: string | number,
|
|
456
|
+
tierId: string,
|
|
457
|
+
seatId: string
|
|
458
|
+
) => {
|
|
459
|
+
const response = await publicRequest.post(
|
|
460
|
+
`v1/event/${eventId}/seats/reserve`,
|
|
461
|
+
{
|
|
462
|
+
data: {
|
|
463
|
+
tierId,
|
|
464
|
+
seatId,
|
|
465
|
+
ttl: 10,
|
|
466
|
+
},
|
|
467
|
+
}
|
|
468
|
+
)
|
|
469
|
+
return response.data
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
export const removeSeatReserve = async (
|
|
473
|
+
eventId: string | number,
|
|
474
|
+
tierId: string,
|
|
475
|
+
seatIds: string[]
|
|
476
|
+
) => {
|
|
477
|
+
const response = await publicRequest.delete(
|
|
478
|
+
`v1/event/${eventId}/seats/delete-reserved`,
|
|
479
|
+
{
|
|
480
|
+
data: {
|
|
481
|
+
tierId,
|
|
482
|
+
seatIds,
|
|
483
|
+
},
|
|
484
|
+
}
|
|
485
|
+
)
|
|
486
|
+
|
|
487
|
+
return response.data
|
|
488
|
+
}
|
|
489
|
+
|
|
490
|
+
// seat map <--end-->
|
|
417
491
|
export function getPixelScript(id: string | number, pageOptions: pageOptions) {
|
|
418
492
|
const response = publicRequest.get(`v1/event/${id}/track`, {
|
|
419
493
|
params: {
|
|
@@ -459,3 +533,12 @@ export const updateVerificationStatus = async (): Promise<{
|
|
|
459
533
|
})
|
|
460
534
|
return response.data
|
|
461
535
|
}
|
|
536
|
+
|
|
537
|
+
export const checkCustomerOrder = async (orderHash: string): Promise<any> => {
|
|
538
|
+
const response: AxiosResponse<
|
|
539
|
+
any,
|
|
540
|
+
AxiosRequestConfig
|
|
541
|
+
> = await publicRequest.get(`v1/order/${orderHash}/verify-customer-order`)
|
|
542
|
+
|
|
543
|
+
return response.data
|
|
544
|
+
}
|
|
@@ -300,6 +300,7 @@ export const BillingInfoContainer = React.memo(
|
|
|
300
300
|
zip: '',
|
|
301
301
|
})
|
|
302
302
|
const [loading, setLoading] = useState(true)
|
|
303
|
+
const [cardLoading, setCardLoading] = useState(false)
|
|
303
304
|
const [isCountriesLoading, setIsCountriesLoading] = useState(true)
|
|
304
305
|
const [error, setError] = useState(null)
|
|
305
306
|
const [phoneValidationIsLoading, setPhoneValidationIsLoading] = useState(
|
|
@@ -318,6 +319,7 @@ export const BillingInfoContainer = React.memo(
|
|
|
318
319
|
? brandOptIn
|
|
319
320
|
: _get(cartInfoData, 'optedIn', false)
|
|
320
321
|
const ttfOptIn = Boolean(_get(cartInfoData, 'ttfOptIn', false))
|
|
322
|
+
const isTable = Boolean(_get(cartInfoData, 'is_table', false))
|
|
321
323
|
const hideTtfOptIn: boolean = _get(cartInfoData, 'hide_ttf_opt_in', true)
|
|
322
324
|
const expirationTime = _get(cartInfoData, 'expiresAt')
|
|
323
325
|
const flagRequirePhone = getQueryVariable('phone_required') === 'true'
|
|
@@ -390,6 +392,7 @@ export const BillingInfoContainer = React.memo(
|
|
|
390
392
|
// fetch cart data
|
|
391
393
|
const fetchCart = async () => {
|
|
392
394
|
try {
|
|
395
|
+
setCardLoading(true)
|
|
393
396
|
const res = await getCart()
|
|
394
397
|
setCustomHeader(res)
|
|
395
398
|
const cartInfo = _get(res, 'data.data.attributes')
|
|
@@ -403,6 +406,8 @@ export const BillingInfoContainer = React.memo(
|
|
|
403
406
|
if (axios.isAxiosError(e)) {
|
|
404
407
|
onGetCartError(e)
|
|
405
408
|
}
|
|
409
|
+
} finally {
|
|
410
|
+
setCardLoading(false)
|
|
406
411
|
}
|
|
407
412
|
}
|
|
408
413
|
// fetch user data
|
|
@@ -530,10 +535,12 @@ export const BillingInfoContainer = React.memo(
|
|
|
530
535
|
|
|
531
536
|
const pageUrl = isBrowser ? window.location.href.split('?')[0] : ''
|
|
532
537
|
usePixel(eventId, { page: 'billing', pageUrl })
|
|
533
|
-
|
|
538
|
+
if (isTable) {
|
|
539
|
+
dataWithUniqueIds[0].label = 'Get Your Tables'
|
|
540
|
+
}
|
|
534
541
|
return (
|
|
535
542
|
<ThemeProvider theme={themeMui}>
|
|
536
|
-
{(loading || isCountriesLoading) && (
|
|
543
|
+
{(loading || cardLoading || isCountriesLoading) && (
|
|
537
544
|
<Backdrop
|
|
538
545
|
sx={{ color: '#fff', backgroundColor: '#000000bd', zIndex: 1205 }}
|
|
539
546
|
open={true}
|
|
@@ -789,117 +796,122 @@ export const BillingInfoContainer = React.memo(
|
|
|
789
796
|
</div>
|
|
790
797
|
</div>
|
|
791
798
|
)}
|
|
792
|
-
{
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
<
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
<
|
|
802
|
-
{
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
}
|
|
807
|
-
if (
|
|
808
|
-
el.name === 'ttf_opt_in' &&
|
|
809
|
-
hideTtfOptIn
|
|
810
|
-
) {
|
|
811
|
-
return false
|
|
812
|
-
}
|
|
813
|
-
if (el.name === 'phone') {
|
|
814
|
-
if (!hidePhoneField) {
|
|
815
|
-
el.required = flagRequirePhone
|
|
816
|
-
} else {
|
|
799
|
+
{!cardLoading &&
|
|
800
|
+
_map(dataWithUniqueIds, item => {
|
|
801
|
+
const { label, labelClassName, fields } = item
|
|
802
|
+
return (
|
|
803
|
+
<React.Fragment key={item.uniqueId}>
|
|
804
|
+
<p className={labelClassName}>{label}</p>
|
|
805
|
+
{_map(fields, group => {
|
|
806
|
+
const { groupClassname, groupItems } = group
|
|
807
|
+
return (
|
|
808
|
+
<React.Fragment key={group.uniqueId}>
|
|
809
|
+
<div className={groupClassname}>
|
|
810
|
+
{_map(
|
|
811
|
+
groupItems.filter(el => {
|
|
812
|
+
if (el.name === 'holderAge' && !showDOB) {
|
|
817
813
|
return false
|
|
818
814
|
}
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
el.required = true
|
|
815
|
+
if (
|
|
816
|
+
el.name === 'ttf_opt_in' &&
|
|
817
|
+
hideTtfOptIn
|
|
818
|
+
) {
|
|
819
|
+
return false
|
|
825
820
|
}
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
821
|
+
if (el.name === 'phone') {
|
|
822
|
+
if (!hidePhoneField) {
|
|
823
|
+
el.required = flagRequirePhone
|
|
824
|
+
} else {
|
|
825
|
+
return false
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
if (
|
|
829
|
+
el.name ===
|
|
830
|
+
'data_capture[wallet_address]'
|
|
831
|
+
) {
|
|
832
|
+
if (collectMandatoryWalletAddress) {
|
|
833
|
+
el.required = true
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
if (
|
|
837
|
+
[
|
|
838
|
+
'street_address',
|
|
839
|
+
'country',
|
|
840
|
+
'state',
|
|
841
|
+
'city',
|
|
842
|
+
'zip',
|
|
843
|
+
].includes(el.name)
|
|
844
|
+
) {
|
|
845
|
+
if (flagFreeTicket) {
|
|
846
|
+
el.required = false
|
|
847
|
+
return false
|
|
848
|
+
}
|
|
849
|
+
}
|
|
850
|
+
if (
|
|
851
|
+
hideWalletAddressField &&
|
|
852
|
+
el.name === 'wallet-address-info'
|
|
853
|
+
) {
|
|
838
854
|
return false
|
|
839
855
|
}
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
return true
|
|
848
|
-
}),
|
|
849
|
-
element =>
|
|
850
|
-
[
|
|
851
|
-
'password',
|
|
852
|
-
'confirmPassword',
|
|
853
|
-
'password-info',
|
|
854
|
-
].includes(element.name) &&
|
|
855
|
-
isLoggedIn ? null : [
|
|
856
|
-
'data_capture[wallet_address]',
|
|
856
|
+
return true
|
|
857
|
+
}),
|
|
858
|
+
element =>
|
|
859
|
+
[
|
|
860
|
+
'password',
|
|
861
|
+
'confirmPassword',
|
|
862
|
+
'password-info',
|
|
857
863
|
].includes(element.name) &&
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
864
|
+
isLoggedIn ? null : [
|
|
865
|
+
'data_capture[wallet_address]',
|
|
866
|
+
].includes(element.name) &&
|
|
867
|
+
hideWalletAddressField ? null : (
|
|
868
|
+
<React.Fragment key={element.uniqueId}>
|
|
869
|
+
<div
|
|
870
|
+
className={`${
|
|
871
|
+
element.className
|
|
872
|
+
} ${props?.errors[element.name] ||
|
|
873
|
+
''}`}
|
|
874
|
+
>
|
|
875
|
+
{element.component ? (
|
|
876
|
+
element.component
|
|
877
|
+
) : (
|
|
878
|
+
<Field
|
|
879
|
+
{...element}
|
|
880
|
+
type={
|
|
881
|
+
element.type === 'radio'
|
|
882
|
+
? undefined
|
|
883
|
+
: element.type
|
|
884
|
+
}
|
|
885
|
+
setPhoneValidationIsLoading={
|
|
886
|
+
element.type === 'phone'
|
|
887
|
+
? setPhoneValidationIsLoading
|
|
888
|
+
: undefined
|
|
889
|
+
}
|
|
890
|
+
label={getFieldLabel(element)}
|
|
891
|
+
validate={getValidateFunctions(
|
|
892
|
+
element,
|
|
893
|
+
states,
|
|
894
|
+
props.values,
|
|
895
|
+
props.errors
|
|
896
|
+
)}
|
|
897
|
+
setFieldValue={
|
|
898
|
+
props.setFieldValue
|
|
899
|
+
}
|
|
900
|
+
onBlur={props.handleBlur}
|
|
901
|
+
component={getFieldComponent(
|
|
902
|
+
element
|
|
903
|
+
)}
|
|
904
|
+
selectOptions={
|
|
905
|
+
element.name === 'country'
|
|
906
|
+
? _map(countries, item => ({
|
|
898
907
|
value: item.id,
|
|
899
908
|
label: item.name,
|
|
900
909
|
}))
|
|
901
910
|
: element.name === 'state'
|
|
902
|
-
?
|
|
911
|
+
? [
|
|
912
|
+
{ label: element.label, value: '', disabled: true },
|
|
913
|
+
...states,
|
|
914
|
+
]
|
|
903
915
|
: element.selectOptions || []
|
|
904
916
|
}
|
|
905
917
|
theme={theme}
|
|
@@ -15,7 +15,6 @@ import {
|
|
|
15
15
|
CheckboxField,
|
|
16
16
|
CustomField,
|
|
17
17
|
DatePickerField,
|
|
18
|
-
NativeSelectField,
|
|
19
18
|
PhoneNumberField,
|
|
20
19
|
RadioGroupField,
|
|
21
20
|
SelectField,
|
|
@@ -301,7 +300,7 @@ export const getFieldComponent = (element: IGroupItem) => {
|
|
|
301
300
|
|
|
302
301
|
const fieldComponentConfigs = {
|
|
303
302
|
checkbox: CheckboxField,
|
|
304
|
-
select:
|
|
303
|
+
select: CustomField, // Temp change untill refactoring
|
|
305
304
|
select_multi: SelectField,
|
|
306
305
|
phone: PhoneNumberField,
|
|
307
306
|
date: DatePickerField,
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
1
|
import CircularProgress from '@mui/material/CircularProgress'
|
|
2
|
+
import React from 'react'
|
|
3
3
|
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
<
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
)
|
|
10
|
-
}
|
|
4
|
+
export const Loader = () => (
|
|
5
|
+
<div className="loader-container">
|
|
6
|
+
<CircularProgress />
|
|
7
|
+
</div>
|
|
8
|
+
)
|