{"version":3,"sources":["Add.js","Spinner.js","App.js","index.js"],"names":["Add","onConfirm","className","onClick","style","display","alignItems","height","setPdfWorker","PDFWorker","getNextId","String","Math","random","slice","resetHash","HighlightPopup","comment","undefined","text","emoji","App","state","url","window","getPDFurl","a","pdfhighlights","getPDFHighlights","count","scrollViewerTo","highlight","scrollToHighlightFromHash","getPDFhighlightValue","resetHighlights","setState","addHighlight","hl","id","savePDFHighlights","updateHighlight","highlightId","position","content","console","log","map","h","originalPosition","originalContent","rest","self","this","getPDFhighlight","registerListener","val","getPDFhighlightsObj","highlights","tabIndex","beforeLoad","pdfDocument","enableAreaSelection","event","altKey","onScrollChange","scrollRef","scrollTo","onSelectionFinished","hideTipAndSelection","transformSelection","highlightTransform","index","setTip","hideTip","viewportToScaled","screenshot","isScrolledTo","component","Boolean","image","onChange","boundingRect","popupContent","onMouseOver","onMouseOut","key","children","Component","ReactDOM","render","document","getElementById"],"mappings":"sbAsBeA,G,MAhBH,SAAC,GAAiB,IAAhBC,EAAe,EAAfA,UAEV,OACE,yBAAKC,UAAU,OACX,yBACEA,UAAU,eACVC,QAAS,WACPF,MAHJ,yBCNK,G,OAAA,WACb,OACE,yBACEG,MAAO,CACLC,QAAS,OACTC,WAAY,SACZC,OAAQ,UAGV,yBAAKL,UAAU,oBACb,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,yBACf,yBAAKA,UAAU,0BACf,yBAAKA,UAAU,0BACf,yBAAKA,UAAU,8B,8BCEvBM,YAAaC,KAEb,IAAMC,EAAY,kBAAMC,OAAOC,KAAKC,UAAUC,MAAM,IAK9CC,EAAY,aAIZC,EAAiB,SAAC,GAAD,IAAGC,EAAH,EAAGA,QAAH,YACRC,IAAZD,GAAyBA,EAAQE,KAChC,yBAAKjB,UAAU,oBACZe,EAAQG,MADX,IACmBH,EAAQE,MAEzB,MA0LSE,E,4MArLbC,MAAQ,CACNC,IAAKC,OAAOC,YAAYC,EACxBC,cAAeH,OAAOI,mBACtBC,MAAO,EACPxB,SAAS,G,EAIXyB,eAAiB,SAACC,K,EAElBC,0BAA4B,WAC1B,IAAMD,EAAaP,OAAOS,uBAET,MAAbF,GACF,EAAKD,eAAeC,I,EA8BxBG,gBAAkB,WACC,EAAKC,SAASR,cAE/B,EAAKQ,SAAS,CACZR,cAAe,M,EAMnBS,aAAe,SAACL,GAEd,IAAOM,EAAE,sBAAO,EAAKf,MAAMK,eAAlB,4BAAsCI,GAAtC,IAAiDO,GAAI5B,QAC9Dc,OAAOe,kBAAkBF,GAEzB,EAAKF,SAAS,CACZR,cAAeU,K,EAKnBG,gBAAkB,SAACC,EAAqBC,EAAkBC,GACxDC,QAAQC,IAAI,qBAAsBJ,EAAaC,EAAUC,GAEzD,IAAMN,EAAK,EAAKf,MAAMK,cAAcmB,KAAI,SAAAC,GACpC,IACET,EAIES,EAJFT,GACUU,EAGRD,EAHFL,SACSO,EAEPF,EAFFJ,QACGO,EAJL,YAKIH,EALJ,GAMA,OAAOT,IAAOG,EAAP,aAEDH,KACAI,SAAS,2BAAMM,GAAqBN,GACpCC,QAAQ,2BAAMM,GAAoBN,IAC/BO,GAELH,KAIRvB,OAAOe,kBAAkBF,GACzB,EAAKF,SAAS,CACZR,cAAeU,K,uDArEnB,WACE,IAAMc,EAAOC,KACb5B,OAAO6B,kBAAkBC,kBAAiB,SAASC,GACjDX,QAAQC,IAAI,kBACZM,EAAKnB,+BAIPR,OAAOC,YAAY6B,kBAAiB,SAASC,GAC3CJ,EAAKhB,SAAS,CACZ9B,SAAS,EACTkB,IAAKC,OAAOC,YAAYC,OAI5BF,OAAOgC,sBAAsBF,kBAAiB,SAASC,GAErDJ,EAAKhB,SAAS,CACZR,cAAeH,OAAOgC,sBAAsBC,kB,oBAwDlD,WAAU,IAAD,OACP,EAAwCL,KAAK9B,MAArCC,EAAR,EAAQA,IAAKI,EAAb,EAAaA,cAAetB,EAA5B,EAA4BA,QAE5B,OACE,yBAAKiC,GAAG,WAAWpC,UAAU,YAAYwD,SAAS,KAChD,yBAAKxD,UAAU,aACb,WACA,GAAGG,EAAS,OAAO,kBAAC,IAAD,CAAWkB,IAAKA,EAAKoC,WAAY,kBAAC,EAAD,QAC/C,SAAAC,GAAW,OACV,kBAAC,IAAD,CACEA,YAAaA,EACbC,oBAAqB,SAAAC,GAAK,OAAIA,EAAMC,QACpCC,eAAgBjD,EAEhBkD,UAAW,SAAAC,GACT,EAAKpC,eAAiBoC,EAEtB,EAAKlC,6BAEPmC,oBAAqB,SACnBzB,EACAC,EACAyB,EACAC,GAJmB,OAMnB,kBAAC,EAAD,CACEpE,UAAW,SAAAgB,GACP,EAAKmB,aAAa,CAAEO,UAASD,WAAUzB,YACvCmD,QAIRE,mBAAoB,SAClBvC,EACAwC,EACAC,EACAC,EACAC,EACAC,EACAC,GAEA,IAIMC,GAJmBC,QACvB/C,EAAUY,SAAWZ,EAAUY,QAAQoC,OAIvC,kBAAC,IAAD,CACEH,aAAcA,EACdlC,SAAUX,EAAUW,SACpBzB,QAASc,EAAUd,UAGrB,kBAAC,IAAD,CACE2D,aAAcA,EACd7C,UAAWA,EACXiD,SAAU,SAAAC,GACR,EAAKzC,gBACHT,EAAUO,GACV,CAAE2C,aAAcP,EAAiBO,IACjC,CAAEF,MAAOJ,EAAWM,QAM5B,OACE,kBAAC,IAAD,CACEC,aAAc,kBAAC,EAAmBnD,GAClCoD,YAAa,SAAAD,GAAY,OACvBV,EAAOzC,GAAW,SAAAA,GAAS,OAAImD,MAEjCE,WAAYX,EACZY,IAAKd,EACLe,SAAUT,KAIhBpB,WAAY9B,OAvEpB,S,GArGQ4D,aC1ClBC,IAASC,OAAO,kBAAC,EAAD,MAASC,SAASC,eAAe,e","file":"static/js/main.31c4c2aa.chunk.js","sourcesContent":["// @flow\r\n\r\nimport React, { Component } from \"react\";\r\n\r\nimport \"./style/App.css\";\r\n\r\nconst Add = ({onConfirm}) => { \r\n \r\n return (\r\n
\r\n {\r\n onConfirm(); \r\n }}\r\n >\r\n Save selected text\r\n
\r\n \r\n ); \r\n}\r\n\r\nexport default Add;","import React from \"react\";\n\nimport \"./style/Spinner.css\";\n\nexport default () => {\n return (\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n );\n};\n","// @flow\n/* eslint import/no-webpack-loader-syntax: 0 */\n\nimport React, { Component } from \"react\";\nimport PDFWorker from \"worker-loader!pdfjs-dist/lib/pdf.worker\";\n\nimport {\n PdfLoader,\n PdfHighlighter, \n Highlight,\n Popup,\n AreaHighlight,\n setPdfWorker\n} from \"react-pdf-highlighter\";\n\nimport testHighlights from \"./test-highlights\";\nimport Add from \"./Add\";\n\nimport Spinner from \"./Spinner\";\n\nimport type {\n T_Highlight,\n T_NewHighlight\n} from \"react-pdf-highlighter/src/types\";\n\nimport \"./style/App.css\";\n\nsetPdfWorker(PDFWorker);\n\nconst getNextId = () => String(Math.random()).slice(2);\n\n// const parseIdFromHash = () =>\n// document.location.hash.slice(\"#highlight-\".length);\n\nconst resetHash = () => {\n // document.location.hash = \"\";\n};\n\nconst HighlightPopup = ({ comment }) =>\n (comment !== undefined && comment.text) ? (\n
\n {comment.emoji} {comment.text}\n
\n ) : null;\n\n\nclass App extends Component { \n\n state = {\n url: window.getPDFurl().a,\n pdfhighlights: window.getPDFHighlights(),\n count: 1,\n display: false\n };\n\n \n scrollViewerTo = (highlight: any) => {};\n\n scrollToHighlightFromHash = () => {\n const highlight = window.getPDFhighlightValue();// getHighlightById(parseIdFromHash());\n\n if (highlight != null) {\n this.scrollViewerTo(highlight); \n }\n };\n\n // get the record details\n componentDidMount() { \n const self = this;\n window.getPDFhighlight().registerListener(function(val) {\n console.log(\"Scroll to view\");\n self.scrollToHighlightFromHash();\n });\n \n\n window.getPDFurl().registerListener(function(val) {\n self.setState({\n display: true,\n url: window.getPDFurl().a,\n });\n });\n \n window.getPDFhighlightsObj().registerListener(function(val) { \n // reload the page to show the changed highlights \n self.setState({\n pdfhighlights: window.getPDFhighlightsObj().highlights\n });\n //setCount(count+1);\n });\n\n }\n\n resetHighlights = () => {\n let highlights = this.setState.pdfhighlights; \n\n this.setState({\n pdfhighlights: []\n });\n \n };\n \n\n addHighlight = (highlight: T_NewHighlight) => { \n \n const hl = [...this.state.pdfhighlights, { ...highlight, id: getNextId() }];\n window.savePDFHighlights(hl); \n\n this.setState({\n pdfhighlights: hl\n });\n // setCount(count+1);\n }\n\n updateHighlight = (highlightId: string, position: Object, content: Object) => {\n console.log(\"Updating highlight\", highlightId, position, content);\n \n const hl = this.state.pdfhighlights.map(h => {\n const {\n id,\n position: originalPosition,\n content: originalContent,\n ...rest\n } = h;\n return id === highlightId\n ? {\n id,\n position: { ...originalPosition, ...position },\n content: { ...originalContent, ...content },\n ...rest\n }\n : h;\n }) \n ; \n\n window.savePDFHighlights(hl);\n this.setState({\n pdfhighlights: hl\n });\n // setCount(count+1);\n } \n\n render() {\n const { url, pdfhighlights, display } = this.state;\n\n return ( \n
\n
\n {(() => {\n if(display) return }>\n {pdfDocument => (\n event.altKey}\n onScrollChange={resetHash}\n // pdfScaleValue=\"page-width\"\n scrollRef={scrollTo => {\n this.scrollViewerTo = scrollTo;\n\n this.scrollToHighlightFromHash();\n }}\n onSelectionFinished={(\n position,\n content,\n hideTipAndSelection,\n transformSelection\n ) => ( \n {\n this.addHighlight({ content, position, comment });\n hideTipAndSelection();\n }}\n />\n )}\n highlightTransform={(\n highlight,\n index,\n setTip,\n hideTip,\n viewportToScaled,\n screenshot,\n isScrolledTo\n ) => {\n const isTextHighlight = !Boolean(\n highlight.content && highlight.content.image\n );\n\n const component = isTextHighlight ? (\n \n ) : (\n {\n this.updateHighlight(\n highlight.id,\n { boundingRect: viewportToScaled(boundingRect) },\n { image: screenshot(boundingRect) }\n );\n }}\n />\n );\n\n return (\n }\n onMouseOver={popupContent =>\n setTip(highlight, highlight => popupContent)\n }\n onMouseOut={hideTip}\n key={index}\n children={component}\n />\n );\n }}\n highlights={pdfhighlights}\n />\n )}\n \n })()}\n
\n
\n ); \n }\n}\n\nexport default App;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport App from \"./App\";\n\nReactDOM.render(, document.getElementById(\"recordpdf\"));\n"],"sourceRoot":""}