{"version":3,"sources":["webpack:///./src/views/Vigenere.vue?5111","webpack:///src/views/Vigenere.vue","webpack:///./src/views/Vigenere.vue?5a8f","webpack:///./src/views/Vigenere.vue","webpack:///./src/components/Vigenere.vue?4e3f","webpack:///./src/components/vigenerecipher.js","webpack:///src/components/Vigenere.vue","webpack:///./src/components/Vigenere.vue?3d85","webpack:///./src/components/Vigenere.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","_v","attrs","mode","staticRenderFns","Vigenerevue_type_script_lang_js_","name","components","Vigenere","views_Vigenerevue_type_script_lang_js_","component","Object","componentNormalizer","__webpack_exports__","staticClass","label","custom-class","maxlength","caesar","model","value","callback","$$v","key","trim","expression","text","type","_e","staticStyle","word-break","_s","cipherresult","alphabet","performVigenere","direction","toUpperCase","result","i","length","letter","keyLetter","shiftAmount","indexOf","push","String","fromCharCode","mod","charCodeAt","join","a","m","x","encryptVigenere","decryptVigenere","validateKey","vigenerecipher","props","data","computed","invalidKey","components_Vigenerevue_type_script_lang_js_"],"mappings":"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","file":"js/vigenere.60d727b5.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',[_vm._v(\"Vigenère-Chiffre\")]),_c('h2',[_vm._v(\"Verschlüsselung\")]),_c('Vigenere',{attrs:{\"mode\":\"encrypt\"}}),_c('h2',[_vm._v(\"Entschlüsselung\")]),_c('Vigenere',{attrs:{\"mode\":\"decrypt\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n Vigenère-Chiffre\n Verschlüsselung\n \n Entschlüsselung\n \n \n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vigenere.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vigenere.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Vigenere.vue?vue&type=template&id=5b026fb4&\"\nimport script from \"./Vigenere.vue?vue&type=script&lang=js&\"\nexport * from \"./Vigenere.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column is-2\"},[_c('b-field',{attrs:{\"label\":\"Schlüssel\"}},[_c('b-input',{attrs:{\"custom-class\":\"is-uppercase\",\"maxlength\":_vm.caesar ? '1' : ''},model:{value:(_vm.key),callback:function ($$v) {_vm.key=(typeof $$v === 'string'? $$v.trim(): $$v)},expression:\"key\"}})],1),(_vm.text !== '' && _vm.key === '')?_c('b-message',{attrs:{\"type\":\"is-warning\"}},[_vm._v(\"\\n Bitte Schlüssel eingeben.\\n \")]):_vm._e(),(_vm.invalidKey)?_c('b-message',{attrs:{\"type\":\"is-danger\"}},[_vm._v(\"\\n Ungültiger Schlüssel. Nur Großbuchstaben sind erlaubt.\\n \")]):_vm._e()],1),_c('div',{staticClass:\"column is-5\"},[_c('b-field',{attrs:{\"label\":_vm.mode === 'decrypt' ? 'Schlüsseltext' : 'Klartext'}},[_c('b-input',{attrs:{\"type\":\"textarea\",\"custom-class\":\"is-uppercase\"},model:{value:(_vm.text),callback:function ($$v) {_vm.text=(typeof $$v === 'string'? $$v.trim(): $$v)},expression:\"text\"}})],1)],1),_c('div',{staticClass:\"column is-5\",staticStyle:{\"word-break\":\"break-all\"}},[_c('b-field',{attrs:{\"label\":_vm.mode === 'decrypt' ? 'Klartext': 'Schlüsseltext'}},[_vm._v(\"\\n \"+_vm._s(_vm.cipherresult)+\"\\n \")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","const alphabet = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',\n 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']\n\nfunction performVigenere(key, text, direction) {\n key = key.toUpperCase()\n text = text.toUpperCase()\n let result = []\n for (let i = 0; i < text.length; i++) {\n let letter = text[i]\n let keyLetter = key[i % key.length]\n let shiftAmount = alphabet.indexOf(keyLetter)\n if (alphabet.indexOf(letter) === -1) {\n result.push(letter)\n } else {\n\tresult.push(String.fromCharCode(mod((letter.charCodeAt(0) - 65 + direction * shiftAmount), 26) + 65))\n }\n }\n return result.join('')\n}\n\nfunction mod(a, m) {\n let x = a % m\n while (x < 0) {\n x += m\n }\n return x\n}\n\nfunction encryptVigenere(key, text) {\n return performVigenere(key, text, 1)\n}\n\nfunction decryptVigenere(key, text) {\n return performVigenere(key, text, -1)\n}\n\nfunction validateKey(key) {\n key = key.toUpperCase()\n for (let i = 0; i < key.length; i++) {\n if (alphabet.indexOf(key[i]) === -1) {\n return false\n }\n }\n return true\n}\n\nexport default {encryptVigenere, decryptVigenere, validateKey}\n","\n \n \n \n \n \n \n Bitte Schlüssel eingeben.\n \n \n Ungültiger Schlüssel. Nur Großbuchstaben sind erlaubt.\n \n \n \n \n \n \n \n \n \n {{ cipherresult }}\n \n \n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vigenere.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vigenere.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Vigenere.vue?vue&type=template&id=2bd37cfa&\"\nimport script from \"./Vigenere.vue?vue&type=script&lang=js&\"\nexport * from \"./Vigenere.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}