{"version":3,"file":"static/js/458.e001e80e.chunk.js","mappings":"2KAgBKA,E,2JAAW,SAAXA,GAAAA,EAAW,YAAXA,EAAW,eAAXA,IAAAA,EAAW,KAKT,IAAMC,EAAe,SAAAC,IAAAC,EAAAA,EAAAA,GAAAF,EAAAC,GAAA,IAAAE,GAAAC,EAAAA,EAAAA,GAAAJ,GAE1B,SAAAA,EAAYK,GAAY,IAADC,EAGmC,OAHnCC,EAAAA,EAAAA,GAAA,KAAAP,IACrBM,EAAAH,EAAAK,KAAA,KAAMH,IAFAI,cAAgB,cAAaH,EAkD7BI,YAAc,WACpBJ,EAAKK,SAAS,CAAEC,YAAY,IAC5BC,eAAeC,QAAQR,EAAKG,cAAeV,EAAYgB,MACzD,EAjDET,EAAKU,MAAQ,CAAEC,gBAAiB,GAAIL,YAAY,GAAQN,CAC1D,CA2CC,OA3CAY,EAAAA,EAAAA,GAAAlB,EAAA,EAAAmB,IAAA,oBAAAC,MAAA,eAAAC,GAAAC,EAAAA,EAAAA,IAAAC,EAAAA,EAAAA,KAAAC,MACD,SAAAC,IAAA,IAAAC,EAAAC,EAAA,OAAAJ,EAAAA,EAAAA,KAAAK,MAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,GACyBC,EAAAA,EAAAA,IAA2B,4BAA4B,KAAD,EAAvEN,EAAQG,EAAAI,KAGmB,QAF3BN,EAA2Bd,eAAeqB,QAAQC,KAAK1B,iBAEpBkB,IAA6B5B,EAAYgB,MAChFoB,KAAKxB,SAAS,CACZM,gBAAiBS,EACjBd,YAAY,IAGVc,EAASU,OAAS,GACpBvB,eAAeC,QAAQqB,KAAK1B,cAAeV,EAAYsC,MACvDF,KAAKxB,SAAS,CACZM,gBAAiBS,EACjBd,YAAY,KAGduB,KAAKxB,SAAS,CACZM,gBAAiBS,EACjBd,YAAY,IAGjB,wBAAAiB,EAAAS,OAAA,GAAAb,EAAA,UACF,yBAAAJ,EAAAkB,MAAA,KAAAC,UAAA,EAxBA,IAwBA,CAAArB,IAAA,SAAAC,MAED,WACE,IAAAqB,EAAwCN,KAAKnB,MAArCC,EAAewB,EAAfxB,gBAER,OAFmCwB,EAAV7B,YAGvB8B,EAAAA,EAAAA,KAACC,EAAAA,kBAAiB,CAACjC,YAAayB,KAAKzB,YAAYkC,UAC/CF,EAAAA,EAAAA,KAAA,MAAAE,SACG3B,EAAgB4B,KAAI,SAACC,EAAMC,GAAK,OAC/BL,EAAAA,EAAAA,KAAA,MAAAE,UACEI,EAAAA,EAAAA,MAAA,OAAAJ,SAAA,EACEF,EAAAA,EAAAA,KAAA,MAAAE,SAAKE,EAAKG,SACVD,EAAAA,EAAAA,MAAA,KAAAJ,SAAA,CAAIE,EAAKI,QAAQ,WAHZH,EAKJ,QAIT,IACN,KAAC/C,CAAA,CAjDyB,CAASmD,EAAAA,W,0FCT/BC,EAAe,SAAAnD,IAAAC,EAAAA,EAAAA,GAAAkD,EAAAnD,GAAA,IAAAE,GAAAC,EAAAA,EAAAA,GAAAgD,GAAA,SAAAA,IAAA,OAAA7C,EAAAA,EAAAA,GAAA,KAAA6C,GAAAjD,EAAAoC,MAAA,KAAAC,UAAA,CAuClB,OAvCkBtB,EAAAA,EAAAA,GAAAkC,EAAA,EAAAjC,IAAA,oBAAAC,MACnB,WACEe,KAAK9B,MAAMgD,aACb,GAAC,CAAAlC,IAAA,SAAAC,MAED,WAAiB,IAADkC,EACNC,EAAUpB,KAAK9B,MAAfkD,MAEJC,EAA+B,GAOnC,OANID,GAASA,EAAME,oBACjBD,EAAgBD,EAAME,kBAAkBZ,KAAI,SAAAa,GAC1C,MAAO,CAAEC,KAAMD,EAAMvC,IAAKyC,IAAKF,EAAMtC,MACvC,MAIA4B,EAAAA,EAAAA,MAACa,EAAAA,OAAM,CACLC,YAAY,KACZN,cAAeA,EACfO,YAAa,CACX,CAAEH,IAAK,SAAUD,KAAM,sBACvB,CACEC,IAAK,0BACLD,KAAM,mCAER,CAAEC,IAAK,OAAQD,KAAM,OACrB,CAAEC,IAAK,WAAYD,KAAM,WACzB,CAAEC,IAAK,gBAAiBD,KAAM,YAC9B,CAAEC,IAA6B,QAA1BN,EAAEnB,KAAK9B,MAAM2D,OAAOC,cAAM,IAAAX,EAAAA,EAAI,GAAIK,KAAM,iCAA4BO,YAAY,IACrFtB,SAAA,CACH,kUAGCF,EAAAA,EAAAA,KAAA,SAAM,0IAENA,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,WAGN,KAACU,CAAA,CAvCkB,CAASD,EAAAA,WAkD9B,OAAegB,EAAAA,EAAAA,KARf,SAAyBnD,EAAYoD,GACnC,OAAAC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACKD,GAAQ,IACXb,MAAOvC,EAAMuC,MACbS,OAAQhD,EAAMgD,QAElB,IAEwC,SAAAM,GAAQ,OAAIC,EAAAA,EAAAA,KAAkBF,EAAAA,EAAAA,GAAC,CAAC,EAAIG,EAAAA,IAAeF,EAAS,GAApG,CAAsGlB,G,6EC/ChGqB,EAAgB,SAAAxE,IAAAC,EAAAA,EAAAA,GAAAuE,EAAAxE,GAAA,IAAAE,GAAAC,EAAAA,EAAAA,GAAAqE,GACpB,SAAAA,EAAYpE,GAAiC,OAAAE,EAAAA,EAAAA,GAAA,KAAAkE,GAAAtE,EAAAK,KAAA,KACrCH,EACR,CAsFC,OAtFAa,EAAAA,EAAAA,GAAAuD,EAAA,EAAAtD,IAAA,sBAAAC,MAED,WACE,OACE4B,EAAAA,EAAAA,MAAA0B,EAAAA,SAAA,CAAA9B,SAAA,EACEF,EAAAA,EAAAA,KAAA,KAAAE,SAAG,uIACHF,EAAAA,EAAAA,KAAA,KAAAE,SAAG,+DAGT,GAAC,CAAAzB,IAAA,SAAAC,MAED,WACE,IAAQuD,EAASxC,KAAK9B,MAAdsE,KAER,OACEA,GACAA,EAAKC,0BACJD,EAAKC,wBAAwBC,+BAAiCF,EAAKC,wBAAwBE,gCAC3D,MAAjC3C,KAAK9B,MAAM0E,SAASC,UAGbtC,EAAAA,EAAAA,KAACuC,EAAAA,EAAQ,CAACC,GAAG,MAGfP,GAAQA,EAAKC,yBAClB5B,EAAAA,EAAAA,MAACG,EAAAA,SAAc,CAAAP,SAAA,EACbI,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQT,EAAKC,wBAAwBS,gBAAgBzC,SAAA,EAC1DF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,kCACbI,EAAAA,EAAAA,MAACuC,EAAAA,EAAS,CAAA3C,SAAA,CAAC,4DAA0D+B,EAAKC,wBAAwBY,gBAAgB,iBAClHxC,EAAAA,EAAAA,MAACyC,EAAAA,EAAW,CAAA7C,SAAA,EACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAK9B,MAAMwF,oBAAoBjD,SAAC,4BAGjEF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,YAAYC,QAASzD,KAAK9B,MAAMyF,WAAWlD,SAAC,sBAK9DI,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQT,EAAKC,wBAAwBC,8BAA8BjC,SAAA,EACxEF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,4BACbI,EAAAA,EAAAA,MAACuC,EAAAA,EAAS,CAAA3C,SAAA,EACRF,EAAAA,EAAAA,KAAA,KAAAE,SAAG,mDACFT,KAAK4D,0BAERrD,EAAAA,EAAAA,KAAC+C,EAAAA,EAAW,CAAA7C,UACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAK9B,MAAM2F,4BAA4BpD,SAAC,aAK7EI,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQT,EAAKC,wBAAwBE,8BAA8BlC,SAAA,EACxEF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,4BACbI,EAAAA,EAAAA,MAACuC,EAAAA,EAAS,CAAA3C,SAAA,EACRF,EAAAA,EAAAA,KAAA,KAAAE,SAAG,8HACFT,KAAK4D,0BAERrD,EAAAA,EAAAA,KAAC+C,EAAAA,EAAW,CAAA7C,UACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,YAAYC,QAASzD,KAAK9B,MAAM2F,4BAA4BpD,SAAC,aAM/EI,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQT,EAAKC,wBAAwBqB,2BAA2BrD,SAAA,EACrEF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,4BACbI,EAAAA,EAAAA,MAACuC,EAAAA,EAAS,CAAA3C,SAAA,EACRF,EAAAA,EAAAA,KAAA,KAAAE,SAAG,6DACFT,KAAK4D,0BAERrD,EAAAA,EAAAA,KAAC+C,EAAAA,EAAW,CAAA7C,UACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAK9B,MAAM2F,4BAA4BpD,SAAC,aAK7EI,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQT,EAAKC,wBAAwBsB,cAActD,SAAA,EACxDF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,yBACbF,EAAAA,EAAAA,KAAC6C,EAAAA,EAAS,CAAA3C,SAAET,KAAK4D,yBACjBrD,EAAAA,EAAAA,KAAC+C,EAAAA,EAAW,CAAA7C,UACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAK9B,MAAM2F,4BAA4BpD,SAAC,eAM7E,IACN,KAAC6B,CAAA,CAzFmB,CAAStB,EAAAA,WA+F/B,IC9FKpD,ED8FL,GAAeoG,EAAAA,EAAAA,IAAWhC,EAAAA,EAAAA,KAH1B,SAAwBiC,EAAgBhC,GAAgB,IAA7BO,EAAIyB,EAAJzB,KACzB,OAAAN,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAYD,GAAQ,IAAEO,KAAAA,GACxB,IACmD,SAAAL,GAAQ,OAAIC,EAAAA,EAAAA,KAAkBF,EAAAA,EAAAA,GAAC,CAAC,EAAIgC,EAAAA,IAAe/B,EAAS,GAArFH,CAAuFM,I,kEC9FjG,SAAX1E,GAAAA,EAAW,YAAXA,EAAW,eAAXA,IAAAA,EAAW,SAKVuG,EAA4B,SAAArG,IAAAC,EAAAA,EAAAA,GAAAoG,EAAArG,GAAA,IAAAE,GAAAC,EAAAA,EAAAA,GAAAkG,GAEhC,SAAAA,EAAYjG,GAAuC,IAADC,EAK9C,OAL8CC,EAAAA,EAAAA,GAAA,KAAA+F,IAChDhG,EAAAH,EAAAK,KAAA,KAAMH,IAFAkG,kCAAoC,4BAA2BjG,EAmChEkG,eAAiB,SAACC,GACvBnG,EAAKK,SAAS,CACZ+F,WAAW,IAEb7F,eAAeC,QAAQR,EAAKiG,kCAAmCxG,EAAYsC,KAC7E,EAAC/B,EAEMqG,aAAe,SAACF,GACjBnG,EAAKD,MAAM2D,SACb4C,OAAO7B,SAAS8B,KAAOvG,EAAKD,MAAM2D,OAAO8C,aAAe,uBAE5D,EA1CExG,EAAKU,MAAQ,CACX0F,WAAW,GACXpG,CACJ,CAwEC,OAxEAY,EAAAA,EAAAA,GAAAoF,EAAA,EAAAnF,IAAA,oBAAAC,MAED,WACEe,KAAK9B,MAAM0G,YAEX,IAAMC,EAA0BnG,eAAeqB,QAAQC,KAAKoE,oCAG7B,OAA5BS,GAAoCA,IAA4BjH,EAAYgB,SAC7EkG,EAAAA,EAAAA,QAAoDlH,EAAYsC,MAChEuE,OAAO7B,SAAS8B,KAAKK,QAAQ,UAAY,EAEzC/E,KAAKxB,SAAS,CACZ+F,WAAW,IAGbvE,KAAKxB,SAAS,CACZ+F,WAAW,GAGjB,GAAC,CAAAvF,IAAA,qBAAAC,MAED,gBAC0D+F,KAApDF,EAAAA,EAAAA,OACFpG,eAAeC,QAAQqB,KAAKoE,kCAAmCxG,EAAYgB,MAE/E,GAAC,CAAAI,IAAA,SAAAC,MAeD,WACE,IAAQ4C,EAAW7B,KAAK9B,MAAhB2D,OAER,OAAKA,GAGAA,EAAO8C,cAKV9D,EAAAA,EAAAA,MAACmC,EAAAA,EAAK,CAACC,OAAQjD,KAAKnB,MAAM0F,UAAU9D,SAAA,EAClCF,EAAAA,EAAAA,KAAC4C,EAAAA,EAAW,CAAA1C,SAAC,6CACbF,EAAAA,EAAAA,KAAC6C,EAAAA,EAAS,CAAA3C,UACRI,EAAAA,EAAAA,MAAA,KAAAJ,SAAA,CAAG,0IAEDF,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,oIAIVM,EAAAA,EAAAA,MAACyC,EAAAA,EAAW,CAAA7C,SAAA,EACVF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAKwE,aAAa/D,SAAC,kBAGpDF,EAAAA,EAAAA,KAACgD,EAAAA,EAAM,CAACC,MAAM,UAAUC,QAASzD,KAAKqE,eAAe5D,SAAC,qBArBnD,IA2BX,KAAC0D,CAAA,CAhF+B,CAASnD,EAAAA,WAkF3C,GAAegB,EAAAA,EAAAA,KACb,SAAAiC,EAAkBhC,GAAa,IAA5BJ,EAAMoC,EAANpC,OAAM,OAAAK,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAiCD,GAAQ,IAAEJ,OAAAA,GAAM,IAC1D,SAAAM,GAAQ,OAAIC,EAAAA,EAAAA,KAAkBF,EAAAA,EAAAA,GAAC,CAAC,EAAI+C,EAAAA,IAAiB9C,EAAS,GAFhE,CAGEgC,GCpFIe,EAAM,SAAApH,IAAAC,EAAAA,EAAAA,GAAAmH,EAAApH,GAAA,IAAAE,GAAAC,EAAAA,EAAAA,GAAAiH,GACV,SAAAA,EAAYhH,GAAiC,IAADC,EAYxC,OAZwCC,EAAAA,EAAAA,GAAA,KAAA8G,IAC1C/G,EAAAH,EAAAK,KAAA,KAAMH,IAgDDiH,YAAc,SAACC,EAAkCC,EAAgBC,EAAuBC,GACzFH,IAAoBI,EAAAA,EAAgBC,UACtCtH,EAAKD,MAAMwH,QAAQC,KAAK,SAAU,CAAEN,OAAAA,EAAQC,cAAAA,EAAeM,UAAWnB,OAAO7B,SAASC,WAEpFuC,IAAoBI,EAAAA,EAAgBK,mCACtC1H,EAAKK,SAAS,CAAEsH,mCAAmC,IAGjDV,IAAoBI,EAAAA,EAAgBO,wBACtC5H,EAAKK,SAAS,CAAEwH,mBAAmB,EAAMC,eAAgBV,GAE7D,EAzDEW,EAAAA,EAAaC,WAAWhI,EAAKgH,aAE7BhH,EAAKU,MAAQ,CACXuH,kBAAkB,EAClBC,gBAAiB,EACjBf,cAAe,GACfQ,mCAAmC,EACnCE,mBAAmB,EACnBC,oBAAgBjB,GAChB7G,CACJ,CAkCC,OAlCAY,EAAAA,EAAAA,GAAAmG,EAAA,EAAAlG,IAAA,SAAAC,MAED,WAAiB,IAADqH,EAAA,KACd,OACEzF,EAAAA,EAAAA,MAAA,OAAAJ,SAAA,EACEF,EAAAA,EAAAA,KAACgG,EAAAA,GAAgB,KACjBhG,EAAAA,EAAAA,KAAC1C,EAAe,KAChB0C,EAAAA,EAAAA,KAAC4D,EAA4B,KAC7B5D,EAAAA,EAAAA,KAAC+B,EAAgB,KACjBzB,EAAAA,EAAAA,MAAA,OAAK2F,UAAU,oBAAmB/F,SAAA,EAChCF,EAAAA,EAAAA,KAAA,OAAKkG,QAAQ,EAAKhG,SAAE,gCAAkCiG,EAAAA,GAAAA,MACrDC,GACD9F,EAAAA,EAAAA,MAAC+F,EAAAA,GAAmB,CAAAnG,SAAA,EAClBF,EAAAA,EAAAA,KAACsG,EAAAA,GAAe,KAChBtG,EAAAA,EAAAA,KAAA,OAAKiG,UAAU,8BAA6B/F,SAAET,KAAK9B,MAAMuC,YACzDF,EAAAA,EAAAA,KAACU,EAAe,KAChBV,EAAAA,EAAAA,KAACuG,EAAAA,WAAU,CACTvC,UAAWvE,KAAKnB,MAAMiH,kCACtBiB,UAAU,0IACVC,UAAW,WACTV,EAAK9H,SAAS,CAAEsH,mCAAmC,GACrD,KAEFvF,EAAAA,EAAAA,KAACuG,EAAAA,WAAU,CACTvC,UAAWvE,KAAKnB,MAAMmH,kBACtBe,UAAW/G,KAAKnB,MAAMoH,eAAiBjG,KAAKnB,MAAMoH,eAAegB,WAAa,GAC9ED,UAAW,WACTV,EAAK9H,SAAS,CAAEwH,mBAAmB,EAAOC,oBAAgBjB,GAC5D,YAMZ,KAACE,CAAA,CAhDS,CAASlE,EAAAA,WAgErB,GAAegD,EAAAA,EAAAA,GAAWkB,E","sources":["containers/news/BannerContainer.tsx","containers/layout/FooterContainer.tsx","containers/login/UserTokenDialogs.tsx","containers/restrictedPrivileges/RestrictedPrivilegeContainer.tsx","containers/layout/Layout.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport \"./BannerContainer.scss\";\r\nimport { MaintenanceBanner } from \"@lexdania/components\";\r\nimport { apiGET } from \"../../api\";\r\n\r\ninterface IMaintenanceNews {\r\n id: number;\r\n title: string;\r\n content: string;\r\n}\r\n\r\ninterface IBannerState {\r\n maintenanceNews: IMaintenanceNews[];\r\n showBanner: boolean;\r\n}\r\n\r\nenum booleanEnum {\r\n true = \"true\",\r\n false = \"false\",\r\n}\r\n\r\nexport class BannerContainer extends React.Component<{}, IBannerState> {\r\n private showBannerKey = \"show-banner\";\r\n constructor(props: {}) {\r\n super(props);\r\n\r\n this.state = { maintenanceNews: [], showBanner: false };\r\n }\r\n public async componentDidMount() {\r\n const response = await apiGET<IMaintenanceNews[]>(\"api/news/maintenancenews\");\r\n const sessionStorageShowBanner = sessionStorage.getItem(this.showBannerKey);\r\n\r\n if (sessionStorageShowBanner !== null && sessionStorageShowBanner === booleanEnum.false) {\r\n this.setState({\r\n maintenanceNews: response,\r\n showBanner: false,\r\n });\r\n } else {\r\n if (response.length > 0) {\r\n sessionStorage.setItem(this.showBannerKey, booleanEnum.true);\r\n this.setState({\r\n maintenanceNews: response,\r\n showBanner: true,\r\n });\r\n } else {\r\n this.setState({\r\n maintenanceNews: response,\r\n showBanner: false,\r\n });\r\n }\r\n }\r\n }\r\n\r\n public render() {\r\n const { maintenanceNews, showBanner } = this.state;\r\n\r\n return showBanner ? (\r\n <MaintenanceBanner onOkClicked={this.onOkClicked}>\r\n <ul>\r\n {maintenanceNews.map((news, index) => (\r\n <li key={index}>\r\n <div>\r\n <h1>{news.title}</h1>\r\n <p>{news.content} </p>\r\n </div>\r\n </li>\r\n ))}\r\n </ul>\r\n </MaintenanceBanner>\r\n ) : null;\r\n }\r\n\r\n private onOkClicked = () => {\r\n this.setState({ showBanner: false });\r\n sessionStorage.setItem(this.showBannerKey, booleanEnum.false);\r\n };\r\n}\r\n","import * as React from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { ITextActions, ITextState, TextActions } from \"../../reducers/texts/textsReducer\";\r\nimport { Footer, IFooterLink } from \"@lexdania/components\";\r\nimport { IConfigState } from \"../../reducers/config/configReducer\";\r\n\r\ninterface IProps extends ITextActions {\r\n texts: ITextState;\r\n config: IConfigState;\r\n}\r\n\r\nclass FooterContainer extends React.Component<IProps, {}> {\r\n public componentDidMount(): void {\r\n this.props.getAllTexts();\r\n }\r\n\r\n public render() {\r\n const { texts } = this.props;\r\n\r\n let externalLinks: IFooterLink[] = [];\r\n if (texts && texts.externalSiteLinks) {\r\n externalLinks = texts.externalSiteLinks.map(entry => {\r\n return { text: entry.key, url: entry.value };\r\n });\r\n }\r\n\r\n return (\r\n <Footer\r\n aboutHeader=\"Om\"\r\n externalLinks={externalLinks}\r\n bottomLinks={[\r\n { url: \"/about\", text: \"Om Statstidende.dk\" },\r\n {\r\n url: \"/personaldataprocessing\",\r\n text: \"Behandling af personoplysninger\",\r\n },\r\n { url: \"/faq\", text: \"FAQ\" },\r\n { url: \"/contact\", text: \"Kontakt\" },\r\n { url: \"/signing/list\", text: \"Signatur\" },\r\n { url: this.props.config.wasUrl ?? \"\", text: \"Tilgængelighedserklæring\", isExternal: true },\r\n ]}\r\n >\r\n I Statstidende optages alle meddelelser, som i henhold til lovgivningen skal kundgøres i Statstidende. Statstidende udgives af Civilstyrelsen under\r\n Justitsministeriet. På statstidende.dk kan du søge og læse meddelelser, abonnere på søgninger og dagens udgave, samt anmode om optagelse af meddelelser.\r\n <br />\r\n På statstidende.dk anvendes der kun tekniske cookies til at kunne logge ind via NemLog-in og derefter opretholde brugerens session.\r\n <br />\r\n <br />\r\n </Footer>\r\n );\r\n }\r\n}\r\n\r\nfunction mapStateToProps(state: any, ownProps: any) {\r\n return {\r\n ...ownProps,\r\n texts: state.texts,\r\n config: state.config,\r\n };\r\n}\r\n\r\nexport default connect(mapStateToProps, dispatch => bindActionCreators({ ...TextActions }, dispatch))(FooterContainer);\r\n","import * as React from \"react\";\r\nimport { IUserActions, IUserState, UserActions } from \"../../reducers/user\";\r\nimport { RouteComponentProps, withRouter, Redirect } from \"react-router-dom\";\r\nimport { connect } from \"react-redux\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport Modal from \"reactstrap/lib/Modal\";\r\nimport ModalHeader from \"reactstrap/lib/ModalHeader\";\r\nimport ModalBody from \"reactstrap/lib/ModalBody\";\r\nimport ModalFooter from \"reactstrap/lib/ModalFooter\";\r\nimport { Button } from \"reactstrap\";\r\n\r\ninterface IRefreshTokenDialogProps extends IUserActions, RouteComponentProps<{}> {\r\n user: IUserState;\r\n}\r\n\r\nclass UserTokenDialogs extends React.Component<IRefreshTokenDialogProps, {}> {\r\n constructor(props: IRefreshTokenDialogProps) {\r\n super(props);\r\n }\r\n\r\n private renderWindowMessage() {\r\n return (\r\n <>\r\n <p>Hvis andre har adgang til denne computer, anbefaler vi, at du sletter browserens midlertidige filer og derefter lukker browseren.</p>\r\n <p>Vær opmærksom på at lukke alle åbne vinduer.</p>\r\n </>\r\n );\r\n }\r\n\r\n public render() {\r\n const { user } = this.props;\r\n\r\n if (\r\n user &&\r\n user.refreshTokenInformation &&\r\n (user.refreshTokenInformation.hasBeenAutomaticallyLoggedOut || user.refreshTokenInformation.hasBeenLoggedOutFromElsewhere) &&\r\n this.props.location.pathname !== \"/\"\r\n ) {\r\n // Redirect to frontpage if automatically logged out\r\n return <Redirect to=\"/\" />;\r\n }\r\n\r\n return user && user.refreshTokenInformation ? (\r\n <React.Fragment>\r\n <Modal isOpen={user.refreshTokenInformation.isAboutToExpire}>\r\n <ModalHeader>Du er ved at blive logget ud</ModalHeader>\r\n <ModalBody>Grundet inaktivitet vil du automatisk blive logget ud om {user.refreshTokenInformation.secondsToLogout} sekunder.</ModalBody>\r\n <ModalFooter>\r\n <Button color=\"primary\" onClick={this.props.requestRefreshToken}>\r\n Forlæng min session\r\n </Button>\r\n <Button color=\"secondary\" onClick={this.props.userLogOut}>\r\n Log mig ud\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n <Modal isOpen={user.refreshTokenInformation.hasBeenAutomaticallyLoggedOut}>\r\n <ModalHeader>Du er blevet logget ud</ModalHeader>\r\n <ModalBody>\r\n <p>Grundet inaktivitet er du nu blevet logget ud.</p>\r\n {this.renderWindowMessage()}\r\n </ModalBody>\r\n <ModalFooter>\r\n <Button color=\"primary\" onClick={this.props.dismissSessionExpiredDialog}>\r\n OK\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n <Modal isOpen={user.refreshTokenInformation.hasBeenLoggedOutFromElsewhere}>\r\n <ModalHeader>Du er blevet logget ud</ModalHeader>\r\n <ModalBody>\r\n <p>Du er automatisk blevet logget ud. Dette skyldes muligvis, at du har logget ud i et andet vindue eller et andet faneblad.</p>\r\n {this.renderWindowMessage()}\r\n </ModalBody>\r\n <ModalFooter>\r\n <Button color=\"secondary\" onClick={this.props.dismissSessionExpiredDialog}>\r\n OK\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n\r\n <Modal isOpen={user.refreshTokenInformation.hasBeenDeletedAndLoggedOut}>\r\n <ModalHeader>Du er blevet logget ud</ModalHeader>\r\n <ModalBody>\r\n <p>Du har slettet din bruger og er derfor blevet logget ud.</p>\r\n {this.renderWindowMessage()}\r\n </ModalBody>\r\n <ModalFooter>\r\n <Button color=\"primary\" onClick={this.props.dismissSessionExpiredDialog}>\r\n OK\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n <Modal isOpen={user.refreshTokenInformation.userLoggedOut}>\r\n <ModalHeader>Du har nu logget ud</ModalHeader>\r\n <ModalBody>{this.renderWindowMessage()}</ModalBody>\r\n <ModalFooter>\r\n <Button color=\"primary\" onClick={this.props.dismissSessionExpiredDialog}>\r\n OK\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n </React.Fragment>\r\n ) : null;\r\n }\r\n}\r\n\r\nfunction mapStateToProps({ user }: any, ownProps: any) {\r\n return { ...ownProps, user };\r\n}\r\nexport default withRouter(connect(mapStateToProps, dispatch => bindActionCreators({ ...UserActions }, dispatch))(UserTokenDialogs));\r\n","import * as React from \"react\";\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter, Button } from \"reactstrap\";\r\nimport { GetClaimPrivilegeMissingAsAssuranceLevelToLow } from \"../../services/ClaimService\";\r\nimport { RouteComponentProps } from \"react-router-dom\";\r\nimport { IConfigActions, IConfigState, ConfigActions } from \"../../reducers/config/configReducer\";\r\nimport { connect } from \"react-redux\";\r\nimport { bindActionCreators } from \"redux\";\r\n\r\ninterface IRestrictedPrivilegeState {\r\n showModal: boolean;\r\n}\r\n\r\ninterface IRestrictedPrivilegeContainer extends RouteComponentProps<{}>, IConfigActions {\r\n config?: IConfigState;\r\n}\r\n\r\nenum booleanEnum {\r\n true = \"true\",\r\n false = \"false\",\r\n}\r\n\r\nclass RestrictedPrivilegeContainer extends React.Component<IRestrictedPrivilegeContainer, IRestrictedPrivilegeState> {\r\n private restrictedPrivilegeModalDismissed = \"RestrictedPrivilege-modal\";\r\n constructor(props: IRestrictedPrivilegeContainer) {\r\n super(props);\r\n\r\n this.state = {\r\n showModal: false,\r\n };\r\n }\r\n\r\n public componentDidMount() {\r\n this.props.getConfig();\r\n\r\n const sessionStorageShowModal = sessionStorage.getItem(this.restrictedPrivilegeModalDismissed);\r\n\r\n if (\r\n (sessionStorageShowModal === null || sessionStorageShowModal === booleanEnum.false) &&\r\n GetClaimPrivilegeMissingAsAssuranceLevelToLow() === booleanEnum.true &&\r\n window.location.href.indexOf(\"lowloa\") < 0\r\n ) {\r\n this.setState({\r\n showModal: true,\r\n });\r\n } else {\r\n this.setState({\r\n showModal: false,\r\n });\r\n }\r\n }\r\n\r\n public componentDidUpdate() {\r\n if (GetClaimPrivilegeMissingAsAssuranceLevelToLow() === undefined) {\r\n sessionStorage.setItem(this.restrictedPrivilegeModalDismissed, booleanEnum.false);\r\n }\r\n }\r\n\r\n public onModalConfirm = (e: any): void => {\r\n this.setState({\r\n showModal: false,\r\n });\r\n sessionStorage.setItem(this.restrictedPrivilegeModalDismissed, booleanEnum.true);\r\n };\r\n\r\n public onModalLogin = (e: any): void => {\r\n if (this.props.config) {\r\n window.location.href = this.props.config.loginSiteUrl + \"/forcedidplogin.ashx\";\r\n }\r\n };\r\n\r\n public render() {\r\n const { config } = this.props;\r\n\r\n if (!config) {\r\n return null;\r\n }\r\n if (!config.loginSiteUrl) {\r\n return null;\r\n }\r\n\r\n return (\r\n <Modal isOpen={this.state.showModal}>\r\n <ModalHeader>Logget ind med begrænsede privileger</ModalHeader>\r\n <ModalBody>\r\n <p>\r\n Der vises kun en del af de tilgængelige funktionaliteter da der er logget ind med et lavere sikkerhedsniveau end de påkræver.\r\n <br />\r\n <br />\r\n Log ind på nemlog-in igen med højere sikkerhedsniveau eller fortsæt til Statstidende med begrænsede privileger.\r\n </p>\r\n </ModalBody>\r\n <ModalFooter>\r\n <Button color=\"primary\" onClick={this.onModalLogin}>\r\n Log ind igen\r\n </Button>\r\n <Button color=\"primary\" onClick={this.onModalConfirm}>\r\n Fortsæt\r\n </Button>\r\n </ModalFooter>\r\n </Modal>\r\n );\r\n }\r\n}\r\nexport default connect(\r\n ({ config }: any, ownProps: any) => ({ ...ownProps, config }),\r\n dispatch => bindActionCreators({ ...ConfigActions }, dispatch)\r\n)(RestrictedPrivilegeContainer);\r\n","import * as React from \"react\";\r\nimport { RouteComponentProps, withRouter } from \"react-router-dom\";\r\nimport { HeaderContainer, IdleUserDetector } from \"../../components/inner-components\";\r\nimport { GlobalErrorBoundary } from \"../../components/inner-components/error\";\r\nimport { AxiosActionCode, AxiosService } from \"../../services/AxiosService\";\r\nimport { BannerContainer } from \"../../containers/news/BannerContainer\";\r\nimport packageJson from \"../../../package.json\";\r\nimport \"./layout.scss\";\r\nimport FooterContainer from \"../../containers/layout/FooterContainer\";\r\nimport UserTokenDialogs from \"../../containers/login/UserTokenDialogs\";\r\nimport RestrictedPrivilegeContainer from \"../../containers/restrictedPrivileges/RestrictedPrivilegeContainer\";\r\nimport { DevelopmentSizeHelper, ErrorModal } from \"@lexdania/components\";\r\n\r\ninterface ILayoutState {\r\n axiosGlobalError: boolean;\r\n responseStatus: number;\r\n correlationId: string;\r\n showModalErrorOldConcurrencyToken: boolean;\r\n showBusinessError: boolean;\r\n businessErrors?: string[];\r\n}\r\n\r\nclass Layout extends React.Component<RouteComponentProps<{}>, ILayoutState> {\r\n constructor(props: RouteComponentProps<{}>) {\r\n super(props);\r\n\r\n AxiosService.setupAxios(this.updateState);\r\n\r\n this.state = {\r\n axiosGlobalError: false,\r\n responseStatus: -1,\r\n correlationId: \"\",\r\n showModalErrorOldConcurrencyToken: false,\r\n showBusinessError: false,\r\n businessErrors: undefined,\r\n };\r\n }\r\n\r\n public render() {\r\n return (\r\n <div>\r\n <IdleUserDetector />\r\n <BannerContainer />\r\n <RestrictedPrivilegeContainer />\r\n <UserTokenDialogs />\r\n <div className=\"main-content-body\">\r\n <div hidden={true}>{\"lexdania/components version: \" + packageJson.dependencies[\"@lexdania/components\"]}</div>\r\n {process.env.NODE_ENV && process.env.NODE_ENV === \"development\" && <DevelopmentSizeHelper />}\r\n <GlobalErrorBoundary>\r\n <HeaderContainer />\r\n <div className=\"container content-area mt-4\">{this.props.children}</div>\r\n <FooterContainer />\r\n <ErrorModal\r\n showModal={this.state.showModalErrorOldConcurrencyToken}\r\n errorText=\"Handlingen kunne ikke udføres, da meddelelsen er blevet opdateret af en anden bruger. Genindlæs venligst siden og forsøg igen.\"\r\n onConfirm={() => {\r\n this.setState({ showModalErrorOldConcurrencyToken: false });\r\n }}\r\n />\r\n <ErrorModal\r\n showModal={this.state.showBusinessError}\r\n errorText={this.state.businessErrors ? this.state.businessErrors.toString() : \"\"}\r\n onConfirm={() => {\r\n this.setState({ showBusinessError: false, businessErrors: undefined });\r\n }}\r\n />\r\n </GlobalErrorBoundary>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n public updateState = (axiosActionCode: AxiosActionCode, status: number, correlationId: string, errors?: string[]) => {\r\n if (axiosActionCode === AxiosActionCode.ApiError) {\r\n this.props.history.push(\"/error\", { status, correlationId, returnUrl: window.location.pathname });\r\n }\r\n if (axiosActionCode === AxiosActionCode.ShowModalErrorOldConcurrencyToken) {\r\n this.setState({ showModalErrorOldConcurrencyToken: true });\r\n }\r\n\r\n if (axiosActionCode === AxiosActionCode.ShowBusinessErrorModal) {\r\n this.setState({ showBusinessError: true, businessErrors: errors });\r\n }\r\n };\r\n}\r\n\r\nexport default withRouter(Layout);\r\n"],"names":["booleanEnum","BannerContainer","_React$Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","showBannerKey","onOkClicked","setState","showBanner","sessionStorage","setItem","false","state","maintenanceNews","_createClass","key","value","_componentDidMount","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","sessionStorageShowBanner","wrap","_context","prev","next","apiGET","sent","getItem","this","length","true","stop","apply","arguments","_this$state","_jsx","MaintenanceBanner","children","map","news","index","_jsxs","title","content","React","FooterContainer","getAllTexts","_this$props$config$wa","texts","externalLinks","externalSiteLinks","entry","text","url","Footer","aboutHeader","bottomLinks","config","wasUrl","isExternal","connect","ownProps","_objectSpread","dispatch","bindActionCreators","TextActions","UserTokenDialogs","_Fragment","user","refreshTokenInformation","hasBeenAutomaticallyLoggedOut","hasBeenLoggedOutFromElsewhere","location","pathname","Redirect","to","Modal","isOpen","isAboutToExpire","ModalHeader","ModalBody","secondsToLogout","ModalFooter","Button","color","onClick","requestRefreshToken","userLogOut","renderWindowMessage","dismissSessionExpiredDialog","hasBeenDeletedAndLoggedOut","userLoggedOut","withRouter","_ref","UserActions","RestrictedPrivilegeContainer","restrictedPrivilegeModalDismissed","onModalConfirm","e","showModal","onModalLogin","window","href","loginSiteUrl","getConfig","sessionStorageShowModal","GetClaimPrivilegeMissingAsAssuranceLevelToLow","indexOf","undefined","ConfigActions","Layout","updateState","axiosActionCode","status","correlationId","errors","AxiosActionCode","ApiError","history","push","returnUrl","ShowModalErrorOldConcurrencyToken","showModalErrorOldConcurrencyToken","ShowBusinessErrorModal","showBusinessError","businessErrors","AxiosService","setupAxios","axiosGlobalError","responseStatus","_this2","IdleUserDetector","className","hidden","packageJson","process","GlobalErrorBoundary","HeaderContainer","ErrorModal","errorText","onConfirm","toString"],"sourceRoot":""}