{"mappings":"AAAA;IACE,SAAS,EAAE,MAAM,CAAC;CACnB;AASD,8BAAqC,QAAQ,CAAC;IAC5C,IAAI,EAAE,wBAAwB,CAAC;IAC/B,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC,CAAC;ACPH,QAAO,MAAM,4DAA6D,CAAC;AAE3E,yBAAgC,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D;IAEE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAG7B,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED;IAKE,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,8CAA8C,QAAQ,CAAC;IACrD,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC,CAAC;AAEH;IACE,iKAAiK;IACjK,WAAW,EAAE,MAAM,CAAC;IAEpB,aAAa,EAAE,MAAM,CAAC;IAEtB,QAAQ,EAAE,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,CAAC;IAE7D,OAAO,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEhD;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE,+BAA+B,KAAK,IAAI,CAAC;IAE9E;;;OAGG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAsDD,kCAAyC,QAAQ,CAAC;IAChD,IAAI,EAAE,4BAA4B,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC;AAGH,uBAA8B,QAAQ,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE5D,8BAAqC,QAAQ,CAAC;IAC5C,IAAI,EAAE,wBAAwB,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC,CAAC;AASH,sCAA6C,QAAQ,CAAC;IACpD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC,CAAC;AAGH,6BAAoC,QAAQ,CACxC,8BAA8B,GAC9B,eAAe,GACf,0BAA0B,GAC1B,sBAAsB,GACtB,sBAAsB,CACzB,CAAC;AM7JF,QAAO,MAAM,wLAYH,CAAC;AAEX,QAAO,MAAM,yEAKH,CAAC;AAEX,4BAAmC,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,kBAAyB,MAAM,IAAI,MAAM,SAAS,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,GACrE,IAAI,GACJ,KAAK,CAAC;AAIV,2BAAkC,OAAO,CACvC,IAAI,CAAC,mBAAmB,EAAE,aAAa,+BAA+B,CAAC,CAAC,CACzE,CAAC;AACF,sCAA6C,OAAO,CAClD,MAAM,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAClD,CAAC;AAEF,yBACI,8BAA8B,GAC9B,mBAAmB,CAAC;AAKxB,QAAO,MAAM,sDAAuD,CAAC;AAKrE,2BAAkC,CAAC,kCAAkC,CAAC,CAAC,MAAM,CAAC,CAAC;AIlB/E,OAAO,MAAM,eAAsB,mIAUhC,QAAQ,CAAC,gBAAgB,CAAC,KAAG,OAAO,CAAC,wBAAwB,CAwE/D,CAAC","sources":["packages/card-viewer/types/src/error.ts","packages/card-viewer/types/src/cardViewer.ts","packages/card-viewer/types/src/generated/graphql.ts","packages/card-viewer/types/src/secureInputs.ts","packages/card-viewer/types/src/riskApplicationSdk.ts","packages/card-viewer/types/src/documentUploadSdk.ts","packages/card-viewer/types/src/checkout.ts","packages/card-viewer/types/src/index.ts","packages/card-viewer/src/src/config.ts","packages/card-viewer/src/src/buildFrame.ts","packages/card-viewer/src/src/handlePostMessage.ts","packages/card-viewer/src/src/index.ts","packages/card-viewer/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,"import {\n  cardFields,\n  GlobalPostMessageEventKind,\n  type CardViewerConfig,\n  type CardViewerRenderedFields,\n  type CardViewerToggleMaskError,\n  type Maybe,\n  type OnCopyToClipboardSuccessPayload,\n  type PaymentCardFields,\n} from \"@highnoteplatform/types\";\n\nexport type { OnCopyToClipboardSuccessPayload };\n\nimport { buildFrame } from \"./buildFrame\";\nimport { iframeOrigin, generateUuid } from \"./config\";\nimport { handlePostMessage } from \"./handlePostMessage\";\n\ntype FieldsMap = Readonly<\n  Record<\n    PaymentCardFields,\n    Maybe<{ container: Element; frame: HTMLIFrameElement }>\n  >\n>;\n\nconst unmount = async (fields: Readonly<FieldsMap>): Promise<void> => {\n  Object.values(fields).forEach((field) => {\n    if (field) {\n      field.container.replaceChildren(\"\");\n    }\n  });\n};\n\nexport const renderFields = async ({\n  clientToken,\n  paymentCardId,\n  elements,\n  onError,\n  onCopyToClipboardSuccess,\n  environment = \"test\",\n  enableClipboard = true,\n  maskedOnLoad = true,\n  onReady,\n}: Readonly<CardViewerConfig>): Promise<CardViewerRenderedFields> => {\n  const uuid = generateUuid();\n  const fields = cardFields.reduce<FieldsMap>(\n    (accum, field) => {\n      const container =\n        document.querySelector(elements[field].selector) ?? document.body;\n\n      const frame =\n        field === \"cardNumber\"\n          ? buildFrame({\n              clientToken,\n              paymentCardId,\n              styles: elements[field].styles,\n              environment,\n              enableClipboard,\n              uuid,\n              maskedOnLoad,\n            })\n          : buildFrame({\n              field,\n              styles: elements[field].styles,\n              enableClipboard,\n              uuid,\n              environment,\n            });\n\n      container.append(frame);\n\n      return {\n        ...accum,\n        [field]: { container, frame },\n      };\n    },\n    {\n      cardNumber: undefined,\n      cvv: undefined,\n      expirationDate: undefined,\n    }\n  );\n\n  window.removeEventListener(\n    \"message\",\n    handlePostMessage(uuid, onError, onCopyToClipboardSuccess, onReady)\n  );\n  window.addEventListener(\n    \"message\",\n    handlePostMessage(uuid, onError, onCopyToClipboardSuccess, onReady)\n  );\n\n  return {\n    toggleCardNumberMask: (): Maybe<CardViewerToggleMaskError> => {\n      const targetWindow = fields.cardNumber?.frame.contentWindow;\n\n      if (targetWindow === null || targetWindow === undefined) {\n        return {\n          name: \"CardViewerToggleMaskError\",\n          message: \"Unable to toggle card number mask.\",\n        };\n      }\n\n      targetWindow.postMessage(\n        { __typename: GlobalPostMessageEventKind.TOGGLE_CARD_NUMBER_MASK },\n        iframeOrigin\n      );\n\n      return undefined;\n    },\n\n    unmount: async () => {\n      await unmount(fields);\n    },\n  };\n};\n"],"names":[],"version":3,"file":"types.d.ts.map"}