## Change Log
* 위젯창에서 브랜드페이 동의창이 안보이는 버그 수정
* 브랜드페이 창 사이즈가 작은 윈도우에서 스크롤이 생기도록 버그 수정
* brandpay 결제정보 변경시 보내는 sdk option { size, use_close_button, use_fixed_size } 옵션 추가
* 브렌드페이 overlay layout 추가
* Progress 디자인 변경
* 위젯 브랜드페이 카드 수정 페이지 window size 수동으로 설정하도록 파라메터로 변경
* RequestAuthenticateModel -> user 파라메터 필수가 아닌 옵션으로 변경
* 결제창 요청시 백그라운드에 blur 효과가 추가 되었습니다
* 위젯 Hooks가 추가되었습니다. ( ready, allTermsAccepted, resize, changePayment, changeTerms )
* 지갑 SDK가 이제 위젯 설정안으로 들어갑니다. ( widget_key를 파라메터로 추가로 전달 ) 스타일 역시 위젯 설정된 스타일대로 적용이 됩니다.
* 내부 변수명 변경 ( 리펙토링 작업 )
* Widget InlineStyle Javascript로 적용되도록 변경
* store hooks 추가 ( sessionUpdate, onReady 등 이벤트 추가 )
* extra option 추가 { webhook_delay_duration: number } - 결제완료ㄴㄴ아/취소시 웹훅 지연시간 설정 ( 단위: 초, 최대 600초 (10분)까지 지연이 가능합니다 )
* 팝업진행전 금액 표시 elementdptj line-height 외부 css로 인해 제대로 보이지 않는 현상 수정
* 네이버페이 팝업 결제 진행시 redirect_url로 이동할때 close 이벤트가 발생하는 버그 수정
* 지갑 SDK 추가
* device uuid cookie로 저장 -> localStoage로 다시 재변경
* 위젯 render parameters interface partial 참조로 변경
* 위젯 request payment parameters data type을 SDK 결제 요청 data type으로 변경
* Shop EX Render 기능 추가 ( 추후 관리자에 관련된 설명을 공지 예졍 )
* 위젯 현재 선택된 Parameters 값의 정보를 반환하는 함수 추가
* 위젯 Parameters Validate 를 별도 함수로 분리
* 정기결제 위젯 추가
* Compiler Target ES5 -> ES6 로 변경되었습니다
* Typescript 4.x -> 5.x 로 업데이트 되었습니다
* 내부 Builder가 Babel -> Vite 로 변경 되었습니다
* ie11 지원이 중단되었습니다. 이제 레거시 ie11은 지원하지 않습니다. ie11을 지원하시려면 4.3.x 이전 버전을 사용해주세요
* 위젯 SDK를 지원합니다. 위젯에 대한 자세한 내용은 추후 개발 문서로 업데이트 될 예정입니다
* SSR 프레임워크 (nextjs, nuxtjs)를 이제 완벽히 지원합니다 서버사이드에서 발생되는 "document is undefined" 이슈를 해결했습니다
* 결제창 open_type iframe -> redirect가 기본으로 변경되었습니다. iframe을 사용하시려면 extra: { open_type: 'iframe' } 를 사용해주세요.
* redirect 모드 일 경우 승인 전 { event: 'confirm_ready' } 값이 { event: 'confirm' } 으로 변경 되었습니다.
* Utf8 내부 함수 동작시 stringify override 해서 사용하는 프레임워크 혹은 솔루션의 경우 JSON 파싱이 안되는 문제 해결
* 보안이슈로 eval -> reduce key access 방식으로 변경
* 결제창 CSS background alpha 값 0.8 -> 0.7 수정
* done / issue 이벤트 발생되면 message 이벤트 모두 초기화
* REST API로 결제 요청 후 사용하는 requestPaymentUrl 함수 추가
* 결제창 background-color CSS 오타 수정
* 카드 자동결제 / 본인인증시 SDK 에서 metadata 정보를 특정 조건에서 전달 안하던 버그 수정
* postMessage 로 통신하는 프론트 프레임워크와 부트페이 결제 상태 체크 event 체크와 충돌시 error -> info 메세지로 변경
* extra option 추가 및 변경 ( easy_payment_method, cash_receipt_type, identity_no )
naverpay_payment_method -> easy_payment_method로 변경 ( 카드/포인트/card/point ) 네이버페이 간편결제시 method 설정 나이스페이만 지원
cash_receipt_type ( 소득공제 | 지출증빙 ) - 네이버포인트 / 계좌결제시 현금영수증 발행 종류 ( 나이스페이만 지원 )
* identity_no ( 현금영수증 발행 대상 - 사업자 번호 혹은 전화번호 )
* 일부 PG 안드로이드 태블릿 결제창 최적화 문제 CSS 수정
* 본인인증시 { extra: { age_limit: 20 } } 인증 최소 나이 설정 기능 추가
* 결제창 stylesheet 변경 event 추가 ( 백그라운드 화면이 transparent로 보이는 문제 해결 )
* extra - phone_editable 옵션 추가 ( 다날 휴대폰 소액결제 시 전화번호 수정 가능할지 불가능할지 설정하는 옵션 )
* SDK 내에서 confirm 이벤트 수행 시 order_id 값을 추가로 전달하도록 변경
* 자동결제 요청시 tax_free optional 로 변경
* Client Event "confirm" 전송 안되는 버그 수정[]()
* Bootpay Enviroment 함수 사용 Bootpay.$environment 환경 변수 사용 가능
* SSR 환경에서 async import 시 Bootpay 함수가 default export
* show_close_button extra value 추가 ( iframe 일 경우 닫기 창 버튼 활성화 )
* 본인인증/결제창/자동결제 전환시 template reload 안되는 버그 수정
* 팝업 유도 안내창에서 금액이 0원인 경우 ( 본인인증, 자동결제에 해당 ) 금액 표시가 안보이도록 수정
* 결제 수단 이름 shortly 형태로 변경 (ex: 카드결제 -> 카드 로 변경)
OpenTypeFilter 정규식 패턴 업데이트 ( 인스타그램 최신 버전 아이폰 대응 )
* Locale Symbol 표준으로 변경 ( korean -> ko, english -> en)
* automatic_tax - 해외결제 tax 옵션 추가
* 이니시스 대응 escrow 결제 요청 파라메터 추가
* Bootpay.destroy() 함수 추가 ( 결제창을 강제로 정리하는 함수 )
* 통계 User Model 추가
* Error Model pg_error_code 선택사항으로 변경
* postMessage null 이벤트 디버그 로그로 낮춤
* Locale 언어 선택 기능 추가 ( Bootpay.setLocale("[ korean | english ]"))
* typescript 3.x 버전에서 TS-2701 generic 오류 해결
* items - code 선택, id - 필수로 변경
* pg, method 통합결제를 위해 선택 으로 변경
* UserModel 파라메터 전부 선택으로 변경
* extra: first_subscription_comment, enable_easy_payments, except_card_companies, enable_card_companies,
minimum_price_limit 추가
* Progress Spinner css 변경
* Event Logger 결제 완료시 정보 초기화 기능 추가
* confirm, done Promise 실행전 timeout 처리
* Native APP scheme 추가 ( swift, mac 추가 )
* (Critical) eventDone이 미리 호출되는 버그 수정
* Native APP에서 요청시 open_type을 redirect로 처리할 경우 새로운 API를 사용하도록 변경
* extra: { timeout: 30 } 결제 시간 만료 설정 기능이 추가 되었습니다.
* 결제창을 닫게 되면 부트페이 서버로 닫음 이벤트를 전송하게 됩니다.
* extra: { browser_open_type: [...] } filter 기능이 추가되었습니다.
#### 새로운 API v2 버전에 맞도록 설계된 SDK를 제공합니다.
NPM으로 다운 받을 수 있는 경로는 다음과 같습니다.
https://www.npmjs.com/package/@bootpay/client-js