{"version":3,"file":"442.chunk.js","mappings":"uNAaaA,EAAyC,SAAH,GAAkB,MAAZC,EAAK,EAALA,MACvD,GAAwBC,EAAAA,EAAAA,WAAS,GAAM,eAAhCC,EAAI,KAAEC,EAAO,KACdC,GAAUC,EAAAA,EAAAA,cAAY,kBAAMF,GAAQ,EAAM,GAAE,IAC5CG,GAASD,EAAAA,EAAAA,cAAY,kBAAMF,GAAQ,EAAK,GAAE,IAC1CI,EAA0C,QAAhC,EAAGP,EAAMQ,SAAS,sBAAc,QAAIC,EAAAA,GAC9CC,EAAkBH,IAAeE,EAAAA,GACvC,GAA4EE,EAAAA,EAAAA,MAApEC,EAAe,EAAfA,gBAAiBC,EAAY,EAAZA,aAAcC,EAAU,EAAVA,WAAYC,EAAY,EAAZA,aAAcC,EAAM,EAANA,OACjE,GAWIC,EAAAA,EAAAA,IAAa,CAAEX,OAAAA,IAVjBY,EAAY,EAAZA,aACAC,EAAkB,EAAlBA,mBACAC,EAAU,EAAVA,WACAC,EAAI,EAAJA,KACAC,EAAgB,EAAhBA,iBACAC,EAAgB,EAAhBA,iBACAC,EAAS,EAATA,UACAC,EAAQ,EAARA,SACAC,EAAY,EAAZA,aACAC,EAAmB,EAAnBA,oBAGF,GAA6EC,EAAAA,EAAAA,sBAC3E,CACEV,aAAAA,EACAW,UAAW,CACTT,WAAAA,EACAK,SAAAA,EACAD,UAAAA,GAEFZ,gBAAAA,EACAkB,SAAU,CACRvB,WAAAA,EACAG,gBAAAA,GAEFqB,OAAQ,CAAE3B,QAAAA,GACVS,aAAAA,EACAmB,WAAYlB,EACZK,mBAAAA,EACAE,KAAAA,EACAK,aAAAA,EACAO,OAAQ,CACNX,iBAAAA,EACAC,iBAAAA,GAEFR,aAAAA,EACAC,OAAAA,EACAhB,MAAOA,EAAMkC,WACbC,cAAcC,EAAAA,EAAAA,MACdT,oBAAAA,IA3BIU,EAAsB,EAAtBA,uBAAwBC,EAAqB,EAArBA,sBAAuBC,EAAiB,EAAjBA,kBAuCvD,OATAC,EAAAA,EAAAA,IAAe,CAAEpC,QAAAA,KACjBqC,EAAAA,EAAAA,YAAU,WACJvC,EACFoC,IAEAD,GAEJ,GAAG,CAACA,EAAwBnC,EAAMoC,IAE3BC,CACT,C","sources":["webpack://oriproductinfodialog/./src/components/Dialog.ts"],"sourcesContent":["import type { OidcAccessToken } from '@ori/auth';\nimport { useProductInfoDialog } from '@ori/product-info-dialog-lib';\nimport { useCallback, useEffect, useState } from 'react';\nimport type { FunctionComponent } from 'react';\n\nimport { NOT_LOGGED_IN_USER_ID } from '../constants';\nimport { useConfiguration } from '../contexts';\nimport { useCloseEvents, useOpenEvent, useTranslations } from '../hooks';\n\nexport interface DialogProps {\n token: OidcAccessToken;\n}\n\nexport const Dialog: FunctionComponent = ({ token }) => {\n const [open, setOpen] = useState(false);\n const onClose = useCallback(() => setOpen(false), []);\n const onOpen = useCallback(() => setOpen(true), []);\n const customerId = token.getClaim('customer_id') ?? NOT_LOGGED_IN_USER_ID;\n const isAnonymousUser = customerId === NOT_LOGGED_IN_USER_ID;\n const { currentLanguage, globalApiUrl, graphqlUrl, staticApiUrl, tenant } = useConfiguration();\n const {\n atpClusterId,\n initialProductCode,\n lineNumber,\n mode,\n originalItemCode,\n originalQuantity,\n placement,\n position,\n productCodes,\n replaceSubscription,\n } = useOpenEvent({ onOpen });\n\n const { closeProductInfoDialog, openProductInfoDialog, productInfoDialog } = useProductInfoDialog(\n {\n atpClusterId,\n analytics: {\n lineNumber,\n position,\n placement,\n },\n currentLanguage,\n customer: {\n customerId,\n isAnonymousUser,\n },\n dialog: { onClose },\n globalApiUrl,\n graphQlUrl: graphqlUrl,\n initialProductCode,\n mode,\n productCodes,\n shared: {\n originalItemCode,\n originalQuantity,\n },\n staticApiUrl,\n tenant,\n token: token.toString(),\n translations: useTranslations(),\n replaceSubscription,\n },\n );\n useCloseEvents({ onClose });\n useEffect(() => {\n if (open) {\n openProductInfoDialog();\n } else {\n closeProductInfoDialog();\n }\n }, [closeProductInfoDialog, open, openProductInfoDialog]);\n\n return productInfoDialog;\n};\n"],"names":["Dialog","token","useState","open","setOpen","onClose","useCallback","onOpen","customerId","getClaim","NOT_LOGGED_IN_USER_ID","isAnonymousUser","useConfiguration","currentLanguage","globalApiUrl","graphqlUrl","staticApiUrl","tenant","useOpenEvent","atpClusterId","initialProductCode","lineNumber","mode","originalItemCode","originalQuantity","placement","position","productCodes","replaceSubscription","useProductInfoDialog","analytics","customer","dialog","graphQlUrl","shared","toString","translations","useTranslations","closeProductInfoDialog","openProductInfoDialog","productInfoDialog","useCloseEvents","useEffect"],"sourceRoot":""}