{"version":3,"file":"index.esm","sources":["../../src/sdk/index.js"],"sourcesContent":["import { PaymentModal } from '../components/payment-module/payment-modal';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nclass PaydeukSDK {\n  constructor() {\n    this.modal = null;\n  }\n\n  init(config = {}) {\n    // React 컴포넌트를 렌더링할 div 생성\n    const container = document.createElement('div');\n    container.id = 'paydeuk-payment-container';\n    document.body.appendChild(container);\n\n    // React 컴포넌트 렌더링\n    const root = ReactDOM.createRoot(container);\n    root.render(\n      React.createElement(PaymentModal, {\n        ...config,\n        onPaymentComplete: () => {\n          if (config.onPaymentComplete) {\n            config.onPaymentComplete();\n          }\n          this.close();\n        },\n      })\n    );\n\n    this.modal = container;\n  }\n\n  open(paymentInfo) {\n    if (!this.modal) {\n      this.init({ paymentInfo });\n    }\n  }\n\n  close() {\n    if (this.modal) {\n      const root = ReactDOM.createRoot(this.modal);\n      root.unmount();\n      this.modal.remove();\n      this.modal = null;\n    }\n  }\n}\n\n// 전역 객체로 SDK 제공\nwindow.PaydeukSDK = new PaydeukSDK();\n"],"names":["PaydeukSDK","config","container","ReactDOM","React","PaymentModal","paymentInfo"],"mappings":";;;AAIA,MAAMA,EAAW;AAAA,EACf,cAAc;AACZ,SAAK,QAAQ;AAAA,EACjB;AAAA,EAEE,KAAKC,IAAS,IAAI;AAEhB,UAAMC,IAAY,SAAS,cAAc,KAAK;AAC9C,IAAAA,EAAU,KAAK,6BACf,SAAS,KAAK,YAAYA,CAAS,GAGtBC,EAAS,WAAWD,CAAS,EACrC;AAAA,MACHE,EAAM,cAAcC,GAAc;AAAA,QAChC,GAAGJ;AAAA,QACH,mBAAmB,MAAM;AACvB,UAAIA,EAAO,qBACTA,EAAO,kBAAmB,GAE5B,KAAK,MAAO;AAAA,QACb;AAAA,MACF,CAAA;AAAA,IACF,GAED,KAAK,QAAQC;AAAA,EACjB;AAAA,EAEE,KAAKI,GAAa;AAChB,IAAK,KAAK,SACR,KAAK,KAAK,EAAE,aAAAA,GAAa;AAAA,EAE/B;AAAA,EAEE,QAAQ;AACN,IAAI,KAAK,UACMH,EAAS,WAAW,KAAK,KAAK,EACtC,QAAS,GACd,KAAK,MAAM,OAAQ,GACnB,KAAK,QAAQ;AAAA,EAEnB;AACA;AAGA,OAAO,aAAa,IAAIH,EAAY;"}