transactionConfirm method
void
transactionConfirm()
결제 확인
Implementation
void transactionConfirm() {
try {
_jsBootpayConfirm().toDart.then((result) {
final resultObj = result as JSObject;
final eventVal = resultObj.getProperty('event'.toJS);
String? event;
if (eventVal != null && eventVal.isA<JSString>()) {
event = (eventVal as JSString).toDart;
}
final jsonStr = _stringify(resultObj);
if (event == 'issued') {
_onIssued?.call(jsonStr);
} else if (event == 'done') {
hideContainer(); // 결제 완료 후 컨테이너 숨기기
_onDone?.call(jsonStr);
}
}).catchError((error) {
final errorObj = error as JSObject;
final eventVal = errorObj.getProperty('event'.toJS);
String? event;
if (eventVal != null && eventVal.isA<JSString>()) {
event = (eventVal as JSString).toDart;
}
final jsonStr = _stringify(errorObj);
hideContainer(); // 에러/취소 시에도 컨테이너 숨기기
if (event == 'error') {
_onError?.call(jsonStr);
} else if (event == 'cancel') {
_onCancel?.call(jsonStr);
}
});
} catch (e) {
debugPrint('[BootpayWidgetController] Error confirming transaction: $e');
}
}