tf-checkout-react 1.0.67 → 1.0.71

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.
Files changed (36) hide show
  1. package/dist/api/index.d.ts +1 -0
  2. package/dist/components/confirmationContainer/config.d.ts +1 -0
  3. package/dist/components/confirmationContainer/index.d.ts +5 -11
  4. package/dist/components/confirmationContainer/social-buttons.d.ts +11 -0
  5. package/dist/components/loginModal/index.d.ts +1 -0
  6. package/dist/components/waitingList/index.d.ts +2 -1
  7. package/dist/index.d.ts +1 -0
  8. package/dist/tf-checkout-react.cjs.development.js +348 -167
  9. package/dist/tf-checkout-react.cjs.development.js.map +1 -1
  10. package/dist/tf-checkout-react.cjs.production.min.js +1 -1
  11. package/dist/tf-checkout-react.cjs.production.min.js.map +1 -1
  12. package/dist/tf-checkout-react.esm.js +350 -170
  13. package/dist/tf-checkout-react.esm.js.map +1 -1
  14. package/dist/tf-checkout-styles.css +1 -1
  15. package/dist/types/referral-promotion.d.ts +1 -1
  16. package/dist/utils/index.d.ts +3 -0
  17. package/dist/utils/setConfigs.d.ts +10 -0
  18. package/package.json +8 -4
  19. package/src/api/index.ts +59 -35
  20. package/src/components/billing-info-container/index.tsx +3 -10
  21. package/src/components/billing-info-container/utils.ts +3 -3
  22. package/src/components/confirmationContainer/config.ts +72 -0
  23. package/src/components/confirmationContainer/index.tsx +107 -138
  24. package/src/components/confirmationContainer/social-buttons.tsx +91 -0
  25. package/src/components/confirmationContainer/style.css +87 -100
  26. package/src/components/loginModal/index.tsx +11 -4
  27. package/src/components/paymentContainer/index.tsx +3 -4
  28. package/src/components/registerModal/index.tsx +3 -3
  29. package/src/components/stripePayment/index.tsx +4 -4
  30. package/src/components/ticketsContainer/index.tsx +1 -3
  31. package/src/components/waitingList/index.tsx +6 -5
  32. package/src/env.ts +3 -3
  33. package/src/index.ts +1 -0
  34. package/src/types/referral-promotion.ts +1 -1
  35. package/src/utils/index.ts +3 -0
  36. package/src/utils/setConfigs.ts +21 -0
@@ -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}.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}.login-register-button,.MuiButtonBase-root.MuiButton-root,.MuiButtonBase-root.MuiButton-root:hover{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}.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}.register-container{margin:0 auto;max-width:800px}.register-container .is-half{width:49%}.register-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.register-container__singleField{margin-top:15px}button{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 .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 -10px}.confirmation-page .referral_text_image_section .referral_text_section{margin:10px}.confirmation-page .referral_text_image_section .referral_title_text{color:#f08057;font-size:28px;padding-bottom:10px}.confirmation-page .referral_text_image_section .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 .share_wrapper .invitation_title{font-size:22px;padding-bottom:12px;padding-top:12px}.confirmation-page .share_wrapper .share_section{display:flex;flex-wrap:wrap;justify-content:space-between;margin:0 -10px}.confirmation-page .share_wrapper .share_section .invitation_section{flex:1 1;padding:0 5px}.confirmation-page .share_wrapper .share_section .invitation_section .share_buttons{display:grid;flex-wrap:wrap;margin:0 -7px}.confirmation-page .share_wrapper .share_section .invitation_section .share_buttons .social-media-btns{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.confirmation-page .share_wrapper .share_section .invitation_section .share_buttons .social-media-btns .sharing-btn{min-width:130px}.confirmation-page .share_wrapper .share_section .invitation_section .share-btn-inner.share-by-link-copy{padding:0;text-align:left}.confirmation-page .share_wrapper .share_section .invitation_section .sharing-button{flex:1 1}.confirmation-page .share_wrapper .share_section .invitation_section .convenient_buttons.sharing-btn{display:inline}.confirmation-page .share_wrapper .share_section .invitation_section .share-by-link{background:#000;color:#fff;padding:0}.confirmation-page .share_wrapper .share_section .invitation_section .share-by-link.label{margin:0;padding:0;text-align:left}.confirmation-page .share_wrapper .share_section .invitation_section .sharing-btn{flex:1 1;padding:7px;text-align:center}.confirmation-page .share_wrapper .share_section .invitation_section .share-btn-inner{background:#000;color:#fff;padding:10px}.confirmation-page .share_wrapper .share_section .invitation_section .share-btn-inner .svg_wrapper{display:inline}.confirmation-page .share_wrapper .share_section .invitation_section .share-btn-inner .share-input{background-color:#fff;text-align:left;width:300px}.confirmation-page .share_wrapper .share_section .invitation_section .share-text{display:block;font-size:13px;font-weight:600;padding-top:8px;width:100%}.confirmation-page .share_wrapper .pricing-section_wrapper{background:#e3e3e3;border:1px solid #dcdcdc;display:grid;grid-template-columns:1fr 1fr;margin:10px 0;padding:15px}.confirmation-page .share_wrapper .pricing-section_wrapper.free_price{background:#e9835b;border:1px solid #eb7b4a;color:#fff}.confirmation-page .share_wrapper .pricing-section_label{font-weight:600}.confirmation-page .share_wrapper .pricing-section_sublabel{font-size:14px;font-weight:100}.confirmation-page .share_wrapper .pricing-section_price{font-weight:600;text-align:right}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;font-weight:700;line-height:1;text-align:center}.event-detail__tier-price p{margin:0}.event-detail__tier-price .fees{font-size:14px;font-weight:400;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{background-color:#d9edf7;border:1px solid #bce8f1;border-radius:4px;color:#3a87ad;font-size:1em;margin:0 35px;padding:8px 15px;text-align:center;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.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}.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}.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 h3{margin:10px 0}.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}.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%}.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 .download-button{background-color:#212529;border:1px solid #fff;border-radius:0;color:#fff;cursor:pointer;display:block;font-family:Bebas Neue;font-size:16px;font-weight:400;line-height:normal;margin-bottom:20px;margin-top:20px;min-height:auto;outline:none;overflow:hidden;padding:12px 0;position:relative;text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:uppercase;width:100%}.order-details .download-button:hover{background-color:#505050}.order-details .personal-link{padding:20px 0}
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}.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}.login-register-button,.MuiButtonBase-root.MuiButton-root,.MuiButtonBase-root.MuiButton-root:hover{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}.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}.register-container{margin:0 auto;max-width:800px}.register-container .is-half{width:49%}.register-container__twoFields{display:flex;justify-content:space-between;margin-top:15px}.register-container__singleField{margin-top:15px}button{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;font-weight:700;line-height:1;text-align:center}.event-detail__tier-price p{margin:0}.event-detail__tier-price .fees{font-size:14px;font-weight:400;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{background-color:#d9edf7;border:1px solid #bce8f1;border-radius:4px;color:#3a87ad;font-size:1em;margin:0 35px;padding:8px 15px;text-align:center;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.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}.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}.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 h3{margin:10px 0}.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}.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%}.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 .download-button{background-color:#212529;border:1px solid #fff;border-radius:0;color:#fff;cursor:pointer;display:block;font-family:Bebas Neue;font-size:16px;font-weight:400;line-height:normal;margin-bottom:20px;margin-top:20px;min-height:auto;outline:none;overflow:hidden;padding:12px 0;position:relative;text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:uppercase;width:100%}.order-details .download-button:hover{background-color:#505050}.order-details .personal-link{padding:20px 0}
@@ -1,6 +1,6 @@
1
1
  export interface IReferralPromotion {
2
2
  label: string;
3
3
  price: string;
4
- id: number | string;
4
+ id?: number | string;
5
5
  subLabel?: string;
6
6
  }
@@ -0,0 +1,3 @@
1
+ export { setConfigs, CONFIGS } from './setConfigs';
2
+ export { getQueryVariable } from './getQueryVariable';
3
+ export { ErrorFocus } from './formikErrorFocus';
@@ -0,0 +1,10 @@
1
+ interface IConfigs {
2
+ BASE_URL: string;
3
+ CLIENT_ID: string;
4
+ CLIENT_SECRET: string;
5
+ STRIPE_PUBLISHABLE_KEY: string;
6
+ [key: string]: string;
7
+ }
8
+ export declare const CONFIGS: IConfigs;
9
+ export declare const setConfigs: (configs: IConfigs) => void;
10
+ export {};
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.67",
2
+ "version": "1.0.71",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -63,20 +63,24 @@
63
63
  "typescript": "^4.4.4"
64
64
  },
65
65
  "dependencies": {
66
- "@emotion/react": "^11.5.0",
67
- "@emotion/styled": "^11.3.0",
66
+ "@emotion/react": "^11.7.0",
67
+ "@emotion/styled": "^11.6.0",
68
68
  "@mui/lab": "^5.0.0-alpha.55",
69
69
  "@mui/material": "^5.2.2",
70
+ "@mui/styles": "^5.2.2",
70
71
  "@stripe/react-stripe-js": "^1.6.0",
71
72
  "@stripe/stripe-js": "^1.21.1",
72
73
  "axios": "^0.24.0",
74
+ "clsx": "^1.1.1",
73
75
  "formik": "^2.2.9",
74
76
  "jwt-decode": "^3.1.2",
75
77
  "lodash": "^4.17.21",
76
78
  "lodash-es": "^4.17.21",
77
79
  "material-ui-phone-number": "^3.0.0",
78
80
  "nanoid": "^3.1.30",
81
+ "prop-types": "^15.7.2",
79
82
  "react-bootstrap": "^2.0.2",
80
- "react-inlinesvg": "^2.3.0"
83
+ "react-inlinesvg": "^2.3.0",
84
+ "react-share": "^4.4.0"
81
85
  }
82
86
  }
package/src/api/index.ts CHANGED
@@ -1,12 +1,16 @@
1
1
  import axios, { AxiosInstance, AxiosRequestConfig } from 'axios'
2
2
  import _get from 'lodash/get'
3
3
 
4
- import { ENV } from '../env'
4
+ import { CONFIGS } from '../utils'
5
5
 
6
6
  const isWindowDefined = typeof window !== 'undefined'
7
- const allowedOrigins = [
8
- 'http://localhost', 'gtsb.io', 'gatsbyjs.io', 'https://www.houseofx.nyc', 'https://tickets-staging.houseofx.nyc'
9
- ]
7
+ const discardedOrigins = [
8
+ 'http://localhost',
9
+ 'gtsb.io',
10
+ 'gatsbyjs.io',
11
+ 'https://www.houseofx.nyc',
12
+ 'https://tickets-staging.houseofx.nyc']
13
+
10
14
  const origin = isWindowDefined && window.location.origin
11
15
 
12
16
  const ttfHeaders: { [key: string]: any } = {
@@ -19,31 +23,35 @@ if (isWindowDefined && localStorage.getItem('auth_guest_token')) {
19
23
  }
20
24
  if (
21
25
  isWindowDefined &&
22
- !allowedOrigins.some(el => origin && origin.includes(el))
26
+ !discardedOrigins.some(el => origin && origin.includes(el))
23
27
  ) {
24
28
  ttfHeaders['X-Source-Origin'] = 'houseofx.nyc'
25
- }
29
+ }
26
30
 
27
31
  interface IPublicRequest extends AxiosInstance {
28
32
  setGuestToken: (token: string) => void;
29
33
  setAccessToken: (token: string) => void;
34
+ setBaseUrl: (baseUrl: string) => void;
30
35
  }
31
36
 
32
37
  export const publicRequest: IPublicRequest = axios.create({
33
- baseURL: ENV.BASE_URL || `https://www.ticketfairy.com/api`,
38
+ baseURL: CONFIGS.BASE_URL || `https://www.ticketfairy.com/api`,
34
39
  headers: ttfHeaders,
35
40
  }) as IPublicRequest
36
41
 
37
- publicRequest.interceptors.response.use(response => response, error => {
38
- if (error?.response?.status === 401) {
39
- if(isWindowDefined){
40
- window.localStorage.removeItem('auth_guest_token')
41
- window.localStorage.removeItem('user_data')
42
- window.localStorage.removeItem('access_token')
42
+ publicRequest.interceptors.response.use(
43
+ response => response,
44
+ error => {
45
+ if (error?.response?.status === 401) {
46
+ if (isWindowDefined) {
47
+ window.localStorage.removeItem('auth_guest_token')
48
+ window.localStorage.removeItem('user_data')
49
+ window.localStorage.removeItem('access_token')
50
+ }
43
51
  }
52
+ return Promise.reject(error)
44
53
  }
45
- return Promise.reject(error)
46
- })
54
+ )
47
55
 
48
56
  publicRequest.interceptors.request.use((config: AxiosRequestConfig) => {
49
57
  const guestToken = isWindowDefined
@@ -75,7 +83,7 @@ publicRequest.interceptors.request.use((config: AxiosRequestConfig) => {
75
83
 
76
84
  if (
77
85
  isWindowDefined &&
78
- !allowedOrigins.some(el => origin && origin.includes(el))) {
86
+ !discardedOrigins.some(el => origin && origin.includes(el))) {
79
87
  const updatedHeaders = {
80
88
  ...config.headers,
81
89
  'X-Source-Origin': 'houseofx.nyc',
@@ -83,12 +91,19 @@ publicRequest.interceptors.request.use((config: AxiosRequestConfig) => {
83
91
  config.headers = updatedHeaders
84
92
  }
85
93
 
94
+ if (CONFIGS.BASE_URL) {
95
+ config.baseURL = CONFIGS.BASE_URL + '/api'
96
+ }
97
+
86
98
  return config
87
99
  })
88
100
 
89
101
  publicRequest.setGuestToken = token =>
90
102
  (publicRequest.defaults.headers.common['Authorization-Guest'] = token)
91
103
 
104
+ publicRequest.setBaseUrl = (baseUrl: string) =>
105
+ (publicRequest.defaults.baseURL = baseUrl + '/api')
106
+
92
107
  publicRequest.setAccessToken = token =>
93
108
  (publicRequest.defaults.headers.common.Authorization = token)
94
109
 
@@ -163,7 +178,7 @@ export const postOnCheckout = (data: any, accessToken: string) => {
163
178
 
164
179
  export const authorize = (data: FormData) =>
165
180
  publicRequest.post(
166
- `/v1/oauth/authorize-rn?client_id=${ENV.CLIENT_ID ||
181
+ `/v1/oauth/authorize-rn?client_id=${CONFIGS.CLIENT_ID ||
167
182
  'e9d8f8922797b4621e562255afe90dbf'}`,
168
183
  data
169
184
  )
@@ -204,30 +219,39 @@ export const handlePaymentSuccess = (orderHash: string) => {
204
219
  }
205
220
 
206
221
  export const getProfileData = (accessToken: any) =>
207
- publicRequest.get('/customer/profile/', {
208
- headers: {
209
- ...ttfHeaders,
210
- Authorization: `Bearer ${accessToken}`,
211
- },
212
- }).catch((e:any)=>{
213
- if(isWindowDefined){
214
- const event = new window.CustomEvent('auth_error', e)
215
- window.document.dispatchEvent(event)
216
- }
217
- return e
218
- })
222
+ publicRequest
223
+ .get('/customer/profile/', {
224
+ headers: {
225
+ ...ttfHeaders,
226
+ Authorization: `Bearer ${accessToken}`,
227
+ },
228
+ })
229
+ .catch((e: any) => {
230
+ if (isWindowDefined) {
231
+ const event = new window.CustomEvent('auth_error', e)
232
+ window.document.dispatchEvent(event)
233
+ }
234
+ return e
235
+ })
219
236
 
220
237
  export const getCountries = () => publicRequest.get('/countries/')
221
238
 
222
- export const getConfirmationData = (orderHash: string) => publicRequest.get(`/v1/order/${orderHash}/payment/complete`)
239
+ export const getConfirmationData = (orderHash: string) =>
240
+ publicRequest.get(`/v1/order/${orderHash}/payment/complete`)
223
241
 
224
- export const getStates = (countryId: string) => publicRequest.get(`/countries/${countryId}/states/`)
242
+ export const getStates = (countryId: string) =>
243
+ publicRequest.get(`/countries/${countryId}/states/`)
225
244
 
226
245
  export const getOrders = (page: number, limit: number, eventSlug: string) =>
227
- publicRequest.get(`/v1/account/orders/?page=${page}&limit=${limit}&filter[event]=${eventSlug}`)
246
+ publicRequest.get(
247
+ `/v1/account/orders/?page=${page}&limit=${limit}&filter[event]=${eventSlug}`
248
+ )
228
249
 
229
- export const getOrderDetails = (orderId: string) => publicRequest.get(`/v1/account/order/${orderId}`)
250
+ export const getOrderDetails = (orderId: string) =>
251
+ publicRequest.get(`/v1/account/order/${orderId}`)
230
252
 
231
- export const addToWaitingList = (id: number, data: any) => publicRequest.post(`/v1/event/${id}/add_to_waiting_list`, data)
253
+ export const addToWaitingList = (id: number, data: any) =>
254
+ publicRequest.post(`/v1/event/${id}/add_to_waiting_list`, data)
232
255
 
233
- export const getConditions = (eventId: string) => publicRequest.get(`v1/event/${eventId}/conditions`)
256
+ export const getConditions = (eventId: string) =>
257
+ publicRequest.get(`v1/event/${eventId}/conditions`)
@@ -121,12 +121,12 @@ const LogicRunner: FC<{
121
121
  const fetchStates = async () => {
122
122
  try {
123
123
  const res = await getStates(values.country)
124
- const mappedStates = _map(_get(res, 'data.data'), item => ({
124
+ const mappedStates = _map(_get(res, 'data.data'), (item, key) => ({
125
125
  label: item,
126
- value: item,
126
+ value: key,
127
127
  }))
128
128
  setStates(mappedStates)
129
- setFieldValue('state', mappedStates[0]?.label ?? '')
129
+ setFieldValue('state', mappedStates[0]?.value ?? '')
130
130
  onGetStatesSuccess(res.data)
131
131
  } catch (e) {
132
132
  if (axios.isAxiosError(e)) {
@@ -563,13 +563,6 @@ export const BillingInfoContainer = ({
563
563
  ].includes(element.name) &&
564
564
  isLoggedIn ? null : (
565
565
  <React.Fragment key={element.uniqueId}>
566
- {element.name === 'email' ? (
567
- <div className="email-checking">
568
- {`IMPORTANT: Please double check that your
569
- email address is correct. It's where we
570
- send your confirmation and e-tickets to!`}
571
- </div>
572
- ) : null}
573
566
  <div className={element.className}>
574
567
  {element.component ? (
575
568
  element.component
@@ -4,7 +4,7 @@ import _forEach from 'lodash/forEach'
4
4
  import _flatMapDeep from 'lodash/flatMapDeep'
5
5
  import _isArray from 'lodash/isArray'
6
6
 
7
- import { ENV } from '../../env'
7
+ import { CONFIGS } from '../../utils'
8
8
  import { IGroupItem } from '../../types'
9
9
  import { combineValidators, requiredValidator } from '../../validators'
10
10
  import { nanoid } from 'nanoid'
@@ -56,11 +56,11 @@ export const createRegisterFormData = (
56
56
  bodyFormData.append('password_confirmation', values.confirmPassword)
57
57
  bodyFormData.append(
58
58
  'client_id',
59
- ENV.CLIENT_ID || 'e9d8f8922797b4621e562255afe90dbf'
59
+ CONFIGS.CLIENT_ID || 'e9d8f8922797b4621e562255afe90dbf'
60
60
  )
61
61
  bodyFormData.append(
62
62
  'client_secret',
63
- ENV.CLIENT_SECRET || 'b89c191eff22fdcf84ac9bfd88d005355a151ec2c83b26b9'
63
+ CONFIGS.CLIENT_SECRET || 'b89c191eff22fdcf84ac9bfd88d005355a151ec2c83b26b9'
64
64
  )
65
65
 
66
66
  _forEach(checkoutBody.attributes, (item: any, key: string) => {
@@ -0,0 +1,72 @@
1
+ import {
2
+ FacebookShareButton,
3
+ FacebookMessengerShareButton,
4
+ TwitterShareButton,
5
+ LinkedinShareButton,
6
+ PinterestShareButton,
7
+ VKShareButton,
8
+ OKShareButton,
9
+ TelegramShareButton,
10
+ WhatsappShareButton,
11
+ RedditShareButton,
12
+ TumblrShareButton,
13
+ MailruShareButton,
14
+ EmailShareButton,
15
+ LivejournalShareButton,
16
+ ViberShareButton,
17
+ WorkplaceShareButton,
18
+ LineShareButton,
19
+ PocketShareButton,
20
+ InstapaperShareButton,
21
+ WeiboShareButton,
22
+ HatenaShareButton,
23
+ FacebookIcon,
24
+ FacebookMessengerIcon,
25
+ TwitterIcon,
26
+ LinkedinIcon,
27
+ PinterestIcon,
28
+ VKIcon,
29
+ OKIcon,
30
+ TelegramIcon,
31
+ WhatsappIcon,
32
+ RedditIcon,
33
+ TumblrIcon,
34
+ MailruIcon,
35
+ EmailIcon,
36
+ LivejournalIcon,
37
+ ViberIcon,
38
+ WorkplaceIcon,
39
+ LineIcon,
40
+ PocketIcon,
41
+ InstapaperIcon,
42
+ WeiboIcon,
43
+ HatenaIcon,
44
+ } from 'react-share'
45
+
46
+ const config: any = {
47
+ facebook: { component: FacebookShareButton, icon: FacebookIcon },
48
+ messenger: { component: FacebookMessengerShareButton, icon: FacebookMessengerIcon },
49
+ twitter: { component: TwitterShareButton, icon: TwitterIcon },
50
+ linkedin: { component: LinkedinShareButton, icon: LinkedinIcon },
51
+ pinterest: { component: PinterestShareButton, icon: PinterestIcon },
52
+ vk: { component: VKShareButton, icon: VKIcon },
53
+ ok: { component: OKShareButton, icon: OKIcon },
54
+ telegram: { component: TelegramShareButton, icon: TelegramIcon },
55
+ whatsapp: { component: WhatsappShareButton, icon: WhatsappIcon },
56
+ reddit: { component: RedditShareButton, icon: RedditIcon },
57
+ tumblr: { component: TumblrShareButton, icon: TumblrIcon },
58
+ mailru: { component: MailruShareButton, icon: MailruIcon },
59
+ email: { component: EmailShareButton, icon: EmailIcon },
60
+ livejournal: { component: LivejournalShareButton, icon: LivejournalIcon },
61
+ viber: { component: ViberShareButton, icon: ViberIcon },
62
+ workplace: { component: WorkplaceShareButton, icon: WorkplaceIcon },
63
+ line: { component: LineShareButton, icon: LineIcon },
64
+ pocket: { component: PocketShareButton, icon: PocketIcon },
65
+ instapaper: { component: InstapaperShareButton, icon: InstapaperIcon },
66
+ weibo: { component: WeiboShareButton, icon: WeiboIcon },
67
+ hatena: { component: HatenaShareButton, icon: HatenaIcon },
68
+ }
69
+
70
+ export default function (key: string) {
71
+ return config[key]
72
+ }