{"version":3,"file":"js/application-a4cbfeb6be6a5e61efce.js","mappings":"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","sources":["webpack://abtion-secret/./app/javascript/images/ sync ^\\.\\/.*$","webpack://abtion-secret/./app/javascript/pages/ sync (","webpack://abtion-secret/./app/javascript/components/ClipboardCopyButton/index.jsx","webpack://abtion-secret/./app/javascript/utils/mountComponents.js","webpack://abtion-secret/./app/javascript/entrypoints/application.js","webpack://abtion-secret/./app/javascript/components/SecretForm/index.jsx","webpack://abtion-secret/./app/javascript/utils/generatePassword.js","webpack://abtion-secret/./app/javascript/utils/encryptSecret.js","webpack://abtion-secret/./app/javascript/components/SecretLink/index.jsx","webpack://abtion-secret/./app/javascript/components/SecretReceipt/index.jsx","webpack://abtion-secret/./app/javascript/pages/SecretNew/index.jsx","webpack://abtion-secret/./app/javascript/components/Button/index.jsx","webpack://abtion-secret/./app/javascript/components/AutosizedTextarea/index.jsx","webpack://abtion-secret/./app/javascript/components/SecretInput/index.jsx","webpack://abtion-secret/./app/javascript/pages/SecretShow/index.jsx","webpack://abtion-secret/./app/javascript/utils/decryptSecret.js"],"sourcesContent":["var map = {\n\t\"./muffi-background-image.jpg\": 171,\n\t\"./muffi-logo.svg\": 537\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 190;","var map = {\n\t\"./SecretNew\": 547,\n\t\"./SecretNew/\": 547,\n\t\"./SecretNew/index\": 547,\n\t\"./SecretNew/index.jsx\": 547,\n\t\"./SecretShow\": 947,\n\t\"./SecretShow/\": 947,\n\t\"./SecretShow/index\": 947,\n\t\"./SecretShow/index.jsx\": 947,\n\t\"pages/SecretNew\": 547,\n\t\"pages/SecretNew/\": 547,\n\t\"pages/SecretNew/index\": 547,\n\t\"pages/SecretNew/index.jsx\": 547,\n\t\"pages/SecretShow\": 947,\n\t\"pages/SecretShow/\": 947,\n\t\"pages/SecretShow/index\": 947,\n\t\"pages/SecretShow/index.jsx\": 947\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 226;","import React from \"react\"\n\nimport Button from \"../Button\"\n\nexport default function ClipboardCopyButton({ value, ...restProps }) {\n const handleCopyClick = () => {\n navigator.clipboard.writeText(value)\n }\n\n return \n \n \n )\n}\n","export default function generatePassword(passwordLength) {\n const hex = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_\"\n let output = \"\"\n for (let i = 0; i < passwordLength; ++i) {\n output += hex.charAt(Math.floor(Math.random() * hex.length))\n }\n return output\n}\n","import { createMessage, encrypt } from \"openpgp/lightweight\"\n\nexport default async function (secret, password) {\n const message = await createMessage({ text: secret })\n\n const binary = await encrypt({\n message,\n passwords: [password],\n format: \"binary\",\n })\n\n return new Blob([binary])\n}\n","import React from \"react\"\n\nimport ClipboardCopyButton from \"../ClipboardCopyButton\"\n\nimport \"./style.scss\"\n\nexport default function SecretLink({ children, keyPass }) {\n const link = `${location.origin}/${keyPass}`\n\n return (\n <>\n
\n \n
\n\n
\n \n Copy to clipboard\n \n {children}\n
\n \n )\n}\n","import React from \"react\"\n\nimport SecretLink from \"../SecretLink\"\nimport Button from \"../Button\"\n\nexport default function LinkMode({ keyPass, onBackClick }) {\n return (\n <>\n

Link generated

\n\n

Remember! It can only be used once

\n\n \n \n \n \n )\n}\n","import React, { useState } from \"react\"\n\nimport SecretForm from \"../../components/SecretForm\"\nimport SecretReceipt from \"../../components/SecretReceipt\"\n\nconst FORM_MODE = \"FORM_MODE\"\nconst LINK_MODE = \"LINK_MODE\"\n\nexport default function SecretNew() {\n const [mode, setMode] = useState(FORM_MODE)\n const [secret, setSecret] = useState(\"\")\n const [keyPass, setKeyPass] = useState(\"\")\n\n const handleSecretStored = ({ secret, keyPass }) => {\n setSecret(secret)\n setKeyPass(keyPass)\n setMode(LINK_MODE)\n }\n\n if (mode === FORM_MODE) {\n return \n } else {\n return (\n setMode(FORM_MODE)} />\n )\n }\n}\n","import React from \"react\"\nimport classNames from \"classnames\"\n\nimport \"./style.scss\"\n\nexport default function Button({\n variant = \"secondary\",\n className,\n ...restProps\n}) {\n const combinedClassName = classNames(\n \"Button\",\n `Button--${variant}`,\n className,\n )\n\n return \n \n \n )\n }\n\n return (\n <>\n

Here is your secret

\n\n

The link will NOT work again, so don't close it too early!

\n\n \n\n \n Copy to clipboard\n \n\n \n \n \n \n )\n}\n","import { decrypt, readMessage } from \"openpgp/lightweight\"\n\nexport default async function descryptSecret(encryptedSecret, password) {\n const binaryMessage = new Uint8Array(await encryptedSecret.arrayBuffer())\n const result = await decrypt({\n message: await readMessage({ binaryMessage }),\n passwords: [password],\n })\n\n return result.data\n}\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","ClipboardCopyButton","value","restProps","React","Button","assign","onClick","handleCopyClick","navigator","clipboard","writeText","getConstructor","className","contexts","parts","split","filename","shift","requirePath","component","context","_e","requireComponent","forEach","k","__esModule","console","error","log","reduce","res","concat","getValidPaths","require","nodes","document","querySelectorAll","i","length","node","constructor","getAttribute","propsJson","props","JSON","parse","createRoot","render","mountComponents","passwordLength","parseInt","process","maxSecretChars","SecretForm","onSecretStored","secret","initialSecret","setSecret","useState","secretIsTooLong","onSubmit","async","event","preventDefault","csrfToken","querySelector","content","password","hex","output","charAt","Math","floor","random","generatePassword","secretBlob","message","createMessage","text","binary","encrypt","passwords","format","Blob","encryptSecret","formData","FormData","append","response","fetch","method","headers","body","key","json","keyPass","SecretInput","autoFocus","placeholder","onChange","currentTarget","variant","disabled","SecretLink","children","link","location","origin","type","readOnly","LinkMode","onBackClick","FORM_MODE","LINK_MODE","SecretNew","mode","setMode","setKeyPass","handleSecretStored","SecretReceipt","combinedClassName","classNames","AutosizedTextarea","minHeight","textareaRef","useRef","resize","useCallback","element","current","style","height","newHeight","max","scrollHeight","useEffect","end","setSelectionRange","window","addEventListener","removeEventListener","rows","ref","handleChange","args","name","LOADING","SUCCESS","FAILURE","SecretShow","loadState","setLoadState","initialize","pathname","substr","hash","encryptedSecret","blob","fetchEncryptedSecret","binaryMessage","Uint8Array","arrayBuffer","decrypt","readMessage","data","decryptSecret","_error","href","confirm"],"sourceRoot":""}