{ "version": 3, "sources": ["../../node_modules/hangul-js/hangul.js", "../../dev/lib/hangul-js.js"], "sourcesContent": ["/**\r\n * Hangul.js\r\n * https://github.com/e-/Hangul.js\r\n *\r\n * Copyright 2017, Jaemin Jo\r\n * under the MIT license.\r\n */\r\n\r\n(function () {\r\n 'use strict';\r\n var CHO = [\r\n '\u3131', '\u3132', '\u3134', '\u3137', '\u3138',\r\n '\u3139', '\u3141', '\u3142', '\u3143', '\u3145', '\u3146',\r\n '\u3147', '\u3148', '\u3149', '\u314A', '\u314B', '\u314C',\r\n '\u314D', '\u314E'\r\n ],\r\n JUNG = [\r\n '\u314F', '\u3150', '\u3151', '\u3152', '\u3153',\r\n '\u3154', '\u3155', '\u3156', '\u3157', ['\u3157', '\u314F'], ['\u3157', '\u3150'],\r\n ['\u3157', '\u3163'], '\u315B', '\u315C', ['\u315C', '\u3153'], ['\u315C', '\u3154'], ['\u315C', '\u3163'],\r\n '\u3160', '\u3161', ['\u3161', '\u3163'], '\u3163'\r\n ],\r\n JONG = [\r\n '', '\u3131', '\u3132', ['\u3131', '\u3145'], '\u3134', ['\u3134', '\u3148'], ['\u3134', '\u314E'], '\u3137', '\u3139',\r\n ['\u3139', '\u3131'], ['\u3139', '\u3141'], ['\u3139', '\u3142'], ['\u3139', '\u3145'], ['\u3139', '\u314C'], ['\u3139', '\u314D'], ['\u3139', '\u314E'], '\u3141',\r\n '\u3142', ['\u3142', '\u3145'], '\u3145', '\u3146', '\u3147', '\u3148', '\u314A', '\u314B', '\u314C', '\u314D', '\u314E'\r\n ],\r\n HANGUL_OFFSET = 0xAC00,\r\n CONSONANTS = [\r\n '\u3131', '\u3132', '\u3133', '\u3134', '\u3135', '\u3136', '\u3137', '\u3138',\r\n '\u3139', '\u313A', '\u313B', '\u313C', '\u313D', '\u313E', '\u313F', '\u3140',\r\n '\u3141', '\u3142', '\u3143', '\u3144', '\u3145', '\u3146', '\u3147', '\u3148',\r\n '\u3149', '\u314A', '\u314B', '\u314C', '\u314D', '\u314E'\r\n ],\r\n COMPLETE_CHO = [\r\n '\u3131', '\u3132', '\u3134', '\u3137', '\u3138',\r\n '\u3139', '\u3141', '\u3142', '\u3143', '\u3145', '\u3146',\r\n '\u3147', '\u3148', '\u3149', '\u314A', '\u314B', '\u314C', '\u314D', '\u314E'\r\n ],\r\n COMPLETE_JUNG = [\r\n '\u314F', '\u3150', '\u3151', '\u3152', '\u3153',\r\n '\u3154', '\u3155', '\u3156', '\u3157', '\u3158', '\u3159',\r\n '\u315A', '\u315B', '\u315C', '\u315D', '\u315E', '\u315F',\r\n '\u3160', '\u3161', '\u3162', '\u3163'\r\n ],\r\n COMPLETE_JONG = [\r\n '', '\u3131', '\u3132', '\u3133', '\u3134', '\u3135', '\u3136', '\u3137', '\u3139',\r\n '\u313A', '\u313B', '\u313C', '\u313D', '\u313E', '\u313F', '\u3140', '\u3141',\r\n '\u3142', '\u3144', '\u3145', '\u3146', '\u3147', '\u3148', '\u314A', '\u314B', '\u314C', '\u314D', '\u314E'\r\n ],\r\n COMPLEX_CONSONANTS = [\r\n ['\u3131', '\u3145', '\u3133'],\r\n ['\u3134', '\u3148', '\u3135'],\r\n ['\u3134', '\u314E', '\u3136'],\r\n ['\u3139', '\u3131', '\u313A'],\r\n ['\u3139', '\u3141', '\u313B'],\r\n ['\u3139', '\u3142', '\u313C'],\r\n ['\u3139', '\u3145', '\u313D'],\r\n ['\u3139', '\u314C', '\u313E'],\r\n ['\u3139', '\u314D', '\u313F'],\r\n ['\u3139', '\u314E', '\u3140'],\r\n ['\u3142', '\u3145', '\u3144']\r\n ],\r\n COMPLEX_VOWELS = [\r\n ['\u3157', '\u314F', '\u3158'],\r\n ['\u3157', '\u3150', '\u3159'],\r\n ['\u3157', '\u3163', '\u315A'],\r\n ['\u315C', '\u3153', '\u315D'],\r\n ['\u315C', '\u3154', '\u315E'],\r\n ['\u315C', '\u3163', '\u315F'],\r\n ['\u3161', '\u3163', '\u3162']\r\n ],\r\n CONSONANTS_HASH,\r\n CHO_HASH,\r\n JUNG_HASH,\r\n JONG_HASH,\r\n COMPLEX_CONSONANTS_HASH,\r\n COMPLEX_VOWELS_HASH\r\n ;\r\n\r\n function _makeHash(array) {\r\n var length = array.length,\r\n hash = { 0: 0 }\r\n ;\r\n for (var i = 0; i < length; i++) {\r\n if (array[i])\r\n hash[array[i].charCodeAt(0)] = i;\r\n }\r\n return hash;\r\n }\r\n\r\n CONSONANTS_HASH = _makeHash(CONSONANTS);\r\n CHO_HASH = _makeHash(COMPLETE_CHO);\r\n JUNG_HASH = _makeHash(COMPLETE_JUNG);\r\n JONG_HASH = _makeHash(COMPLETE_JONG);\r\n\r\n function _makeComplexHash(array) {\r\n var length = array.length,\r\n hash = {},\r\n code1,\r\n code2\r\n ;\r\n for (var i = 0; i < length; i++) {\r\n code1 = array[i][0].charCodeAt(0);\r\n code2 = array[i][1].charCodeAt(0);\r\n if (typeof hash[code1] === 'undefined') {\r\n hash[code1] = {};\r\n }\r\n hash[code1][code2] = array[i][2].charCodeAt(0);\r\n }\r\n return hash;\r\n }\r\n\r\n COMPLEX_CONSONANTS_HASH = _makeComplexHash(COMPLEX_CONSONANTS);\r\n COMPLEX_VOWELS_HASH = _makeComplexHash(COMPLEX_VOWELS);\r\n\r\n function _isConsonant(c) {\r\n return typeof CONSONANTS_HASH[c] !== 'undefined';\r\n }\r\n\r\n function _isCho(c) {\r\n return typeof CHO_HASH[c] !== 'undefined';\r\n }\r\n\r\n function _isJung(c) {\r\n return typeof JUNG_HASH[c] !== 'undefined';\r\n }\r\n\r\n function _isJong(c) {\r\n return typeof JONG_HASH[c] !== 'undefined';\r\n }\r\n\r\n function _isHangul(c /* code number */) {\r\n return 0xAC00 <= c && c <= 0xd7a3;\r\n }\r\n\r\n function _isJungJoinable(a, b) {\r\n return (COMPLEX_VOWELS_HASH[a] && COMPLEX_VOWELS_HASH[a][b]) ? COMPLEX_VOWELS_HASH[a][b] : false;\r\n }\r\n\r\n function _isJongJoinable(a, b) {\r\n return COMPLEX_CONSONANTS_HASH[a] && COMPLEX_CONSONANTS_HASH[a][b] ? COMPLEX_CONSONANTS_HASH[a][b] : false;\r\n }\r\n\r\n var disassemble = function (string, grouped) {\r\n if (string === null) {\r\n throw new Error('Arguments cannot be null');\r\n }\r\n\r\n if (typeof string === 'object') {\r\n string = string.join('');\r\n }\r\n\r\n var result = [],\r\n length = string.length,\r\n cho,\r\n jung,\r\n jong,\r\n code,\r\n r\r\n ;\r\n\r\n for (var i = 0; i < length; i++) {\r\n var temp = [];\r\n\r\n code = string.charCodeAt(i);\r\n if (_isHangul(code)) { // \uC644\uC131\uB41C \uD55C\uAE00\uC774\uBA74\r\n code -= HANGUL_OFFSET;\r\n jong = code % 28;\r\n jung = (code - jong) / 28 % 21;\r\n cho = parseInt((code - jong) / 28 / 21);\r\n temp.push(CHO[cho]);\r\n if (typeof JUNG[jung] === 'object') {\r\n temp = temp.concat(JUNG[jung]);\r\n } else {\r\n temp.push(JUNG[jung]);\r\n }\r\n if (jong > 0) {\r\n if (typeof JONG[jong] === 'object') {\r\n temp = temp.concat(JONG[jong]);\r\n } else {\r\n temp.push(JONG[jong]);\r\n }\r\n }\r\n } else if (_isConsonant(code)) { //\uC790\uC74C\uC774\uBA74\r\n if (_isCho(code)) {\r\n r = CHO[CHO_HASH[code]];\r\n } else {\r\n r = JONG[JONG_HASH[code]];\r\n }\r\n if (typeof r === 'string') {\r\n temp.push(r);\r\n } else {\r\n temp = temp.concat(r);\r\n }\r\n } else if (_isJung(code)) {\r\n r = JUNG[JUNG_HASH[code]];\r\n if (typeof r === 'string') {\r\n temp.push(r);\r\n } else {\r\n temp = temp.concat(r);\r\n }\r\n } else {\r\n temp.push(string.charAt(i));\r\n }\r\n\r\n if (grouped) result.push(temp);\r\n else result = result.concat(temp);\r\n }\r\n\r\n return result;\r\n };\r\n\r\n var disassembleToString = function (str) {\r\n if (typeof str !== 'string') {\r\n return '';\r\n }\r\n str = disassemble(str);\r\n return str.join('');\r\n };\r\n\r\n var assemble = function (array) {\r\n if (typeof array === 'string') {\r\n array = disassemble(array);\r\n }\r\n\r\n var result = [],\r\n length = array.length,\r\n code,\r\n stage = 0,\r\n complete_index = -1, //\uC644\uC131\uB41C \uACF3\uC758 \uC778\uB371\uC2A4\r\n previous_code,\r\n jong_joined = false\r\n ;\r\n\r\n function _makeHangul(index) { // complete_index + 1\uBD80\uD130 index\uAE4C\uC9C0\uB97C greedy\uD558\uAC8C \uD55C\uAE00\uB85C \uB9CC\uB4E0\uB2E4.\r\n var code,\r\n cho,\r\n jung1,\r\n jung2,\r\n jong1 = 0,\r\n jong2,\r\n hangul = ''\r\n ;\r\n\r\n jong_joined = false;\r\n if (complete_index + 1 > index) {\r\n return;\r\n }\r\n for (var step = 1; ; step++) {\r\n if (step === 1) {\r\n cho = array[complete_index + step].charCodeAt(0);\r\n if (_isJung(cho)) { // \uCCAB\uBC88\uC9F8 \uAC83\uC774 \uBAA8\uC74C\uC774\uBA74 1) \u314F\uAC19\uC740 \uACBD\uC6B0\uC774\uAC70\uB098 2) \u3159\uAC19\uC740 \uACBD\uC6B0\uC774\uB2E4\r\n if (complete_index + step + 1 <= index && _isJung(jung1 = array[complete_index + step + 1].charCodeAt(0))) { //\uB2E4\uC74C\uAC83\uC774 \uC788\uACE0 \uBAA8\uC74C\uC774\uBA74\r\n result.push(String.fromCharCode(_isJungJoinable(cho, jung1)));\r\n complete_index = index;\r\n return;\r\n } else {\r\n result.push(array[complete_index + step]);\r\n complete_index = index;\r\n return;\r\n }\r\n } else if (!_isCho(cho)) {\r\n result.push(array[complete_index + step]);\r\n complete_index = index;\r\n return;\r\n }\r\n hangul = array[complete_index + step];\r\n } else if (step === 2) {\r\n jung1 = array[complete_index + step].charCodeAt(0);\r\n if (_isCho(jung1)) { //\uB450\uBC88\uC9F8 \uB610 \uC790\uC74C\uC774 \uC624\uBA74 \u3133 \uC5D0\uC11C \u3145\uAC19\uC740 \uACBD\uC6B0\uC774\uB2E4\r\n cho = _isJongJoinable(cho, jung1);\r\n hangul = String.fromCharCode(cho);\r\n result.push(hangul);\r\n complete_index = index;\r\n return;\r\n } else {\r\n hangul = String.fromCharCode((CHO_HASH[cho] * 21 + JUNG_HASH[jung1]) * 28 + HANGUL_OFFSET);\r\n }\r\n } else if (step === 3) {\r\n jung2 = array[complete_index + step].charCodeAt(0);\r\n if (_isJungJoinable(jung1, jung2)) {\r\n jung1 = _isJungJoinable(jung1, jung2);\r\n } else {\r\n jong1 = jung2;\r\n }\r\n hangul = String.fromCharCode((CHO_HASH[cho] * 21 + JUNG_HASH[jung1]) * 28 + JONG_HASH[jong1] + HANGUL_OFFSET);\r\n \r\n } else if (step === 4) {\r\n jong2 = array[complete_index + step].charCodeAt(0);\r\n if (_isJongJoinable(jong1, jong2)) {\r\n jong1 = _isJongJoinable(jong1, jong2);\r\n } else {\r\n jong1 = jong2;\r\n }\r\n hangul = String.fromCharCode((CHO_HASH[cho] * 21 + JUNG_HASH[jung1]) * 28 + JONG_HASH[jong1] + HANGUL_OFFSET);\r\n } else if (step === 5) {\r\n jong2 = array[complete_index + step].charCodeAt(0);\r\n jong1 = _isJongJoinable(jong1, jong2);\r\n hangul = String.fromCharCode((CHO_HASH[cho] * 21 + JUNG_HASH[jung1]) * 28 + JONG_HASH[jong1] + HANGUL_OFFSET);\r\n }\r\n\r\n if (complete_index + step >= index) {\r\n result.push(hangul);\r\n complete_index = index;\r\n return;\r\n }\r\n }\r\n }\r\n\r\n for (var i = 0; i < length; i++) {\r\n code = array[i].charCodeAt(0);\r\n if (!_isCho(code) && !_isJung(code) && !_isJong(code)) { //\uCD08, \uC911, \uC885\uC131 \uB2E4 \uC544\uB2C8\uBA74\r\n _makeHangul(i - 1);\r\n _makeHangul(i);\r\n stage = 0;\r\n continue;\r\n }\r\n //console.log(stage, array[i]);\r\n if (stage === 0) { // \uCD08\uC131\uC774 \uC62C \uCC28\uB840\r\n if (_isCho(code)) { // \uCD08\uC131\uC774 \uC624\uBA74 \uC544\uBB34 \uBB38\uC81C \uC5C6\uB2E4.\r\n stage = 1;\r\n } else if (_isJung(code)) {\r\n // \uC911\uC131\uC774\uC624\uBA74 \u3150 \uB610\uB294 \u3158 \uC778\uAC83\uC774\uB2E4. \uBC14\uB85C \uAD6C\uBD84\uC744 \uBABB\uD55C\uB2E4. \uB530\uB77C\uC11C \uD2B9\uC218\uD55C stage\uC778 stage4\uB85C \uC774\uB3D9\r\n stage = 4;\r\n }\r\n } else if (stage == 1) { //\uC911\uC131\uC774 \uC62C \uCC28\uB840\r\n if (_isJung(code)) { //\uC911\uC131\uC774 \uC624\uBA74 \uBB38\uC81C\uC5C6\uC74C \uC9C4\uD589.\r\n stage = 2;\r\n } else { //\uC544\uB2C8\uACE0 \uC790\uC74C\uC774\uC624\uBA74 \u313B\uAC19\uC740 \uACBD\uC6B0\uAC00 \uC788\uACE0 \u3139\u314B\uAC19\uC740 \uACBD\uC6B0\uAC00 \uC788\uB2E4.\r\n if (_isJongJoinable(previous_code, code)) {\r\n // \uD569\uCCD0\uC9C8 \uC218 \uC788\uB2E4\uBA74 \u313B \uAC19\uC740 \uACBD\uC6B0\uC778\uB370 \uC774 \uB4A4\uC5D0 \uBAA8\uC74C\uC774 \uC640\uC11C \u3139\uB9C8 \uAC00 \uB420\uC218\uB3C4 \uC788\uACE0 \uCD08\uC131\uC774 \uC62C \uC218\uB3C4 \uC788\uB2E4. \uB530\uB77C\uC11C \uC123\uBD88\uB9AC \uC644\uC131\uD560 \uC218 \uC5C6\uB2E4. \uC774\uB550 stage5\uB85C \uAC04\uB2E4.\r\n stage = 5;\r\n } else { //\uD569\uCCD0\uC9C8 \uC218 \uC5C6\uB2E4\uBA74 \uC55E \uAE00\uC790 \uC644\uC131 \uD6C4 \uC5EC\uC804\uD788 \uC911\uC131\uC774 \uC62C \uCC28\uB840\r\n _makeHangul(i - 1);\r\n }\r\n }\r\n } else if (stage == 2) { //\uC885\uC131\uC774 \uC62C \uCC28\uB840\r\n if (_isJong(code)) { //\uC885\uC131\uC774 \uC624\uBA74 \uB2E4\uC74C\uC5D4 \uC790\uC74C \uB610\uB294 \uBAA8\uC74C\uC774 \uC628\uB2E4.\r\n stage = 3;\r\n } else if (_isJung(code)) { //\uADF8\uB7F0\uB370 \uC911\uC131\uC774 \uC624\uBA74 \uC55E\uC758 \uBAA8\uC74C\uACFC \uD569\uCE60 \uC218 \uC788\uB294\uC9C0 \uBCF8\uB2E4.\r\n if (_isJungJoinable(previous_code, code)) { //\uD569\uCE60 \uC218 \uC788\uC73C\uBA74 \uC5EC\uC804\uD788 \uC885\uC131\uC774 \uC62C \uCC28\uB840\uACE0 \uADF8\uB300\uB85C \uC9C4\uD589\r\n } else { // \uD569\uCE60 \uC218 \uC5C6\uB2E4\uBA74 \uC624\uD0C0\uAC00 \uC0DD\uAE34 \uACBD\uC6B0\r\n _makeHangul(i - 1);\r\n stage = 4;\r\n }\r\n } else { // \uBC1B\uCE68\uC774 \uC548\uB418\uB294 \uC790\uC74C\uC774 \uC624\uBA74 \u3138 \uAC19\uC740 \uC774\uC804\uAE4C\uC9C0 \uC644\uC131\uD558\uACE0 \uB2E4\uC2DC\uC2DC\uC791\r\n _makeHangul(i - 1);\r\n stage = 1;\r\n }\r\n } else if (stage == 3) { // \uC885\uC131\uC774 \uD558\uB098 \uC628 \uC0C1\uD0DC.\r\n if (_isJong(code)) { // \uB610 \uC885\uC131\uC774\uBA74 \uD569\uCE60\uC218 \uC788\uB294\uC9C0 \uBCF8\uB2E4.\r\n if (!jong_joined && _isJongJoinable(previous_code, code)) { //\uD569\uCE60 \uC218 \uC788\uC73C\uBA74 \uACC4\uC18D \uC9C4\uD589. \uC65C\uB0D0\uD558\uBA74 \uC774\uBC88\uC5D0 \uC628 \uC790\uC74C\uC774 \uB2E4\uC74C \uAE00\uC790\uC758 \uCD08\uC131\uC774 \uB420 \uC218\uB3C4 \uC788\uAE30 \uB54C\uBB38. \uB300\uC2E0 \uC774 \uAE30\uD68C\uB294 \uD55C\uBC88\uB9CC\r\n jong_joined = true;\r\n } else { //\uC5C6\uC73C\uBA74 \uD55C\uAE00\uC790 \uC644\uC131\r\n _makeHangul(i - 1);\r\n stage = 1; // \uC774 \uC885\uC131\uC774 \uCD08\uC131\uC774 \uB418\uACE0 \uC911\uC131\uBD80\uD130 \uC2DC\uC791\r\n }\r\n } else if (_isCho(code)) { // \uCD08\uC131\uC774\uBA74 \uD55C\uAE00\uC790 \uC644\uC131.\r\n _makeHangul(i - 1);\r\n stage = 1; //\uC774 \uAE00\uC790\uAC00 \uCD08\uC131\uC774\uB418\uBBC0\uB85C \uC911\uC131\uBD80\uD130 \uC2DC\uC791\r\n } else if (_isJung(code)) { // \uC911\uC131\uC774\uBA74 \uC774\uC804 \uC885\uC131\uC740 \uC774 \uC911\uC131\uACFC \uD569\uCCD0\uC9C0\uACE0 \uC55E \uAE00\uC790\uB294 \uBC1B\uCE68\uC774 \uC5C6\uB2E4.\r\n _makeHangul(i - 2);\r\n stage = 2;\r\n }\r\n } else if (stage == 4) { // \uC911\uC131\uC774 \uD558\uB098 \uC628 \uC0C1\uD0DC\r\n if (_isJung(code)) { //\uC911\uC131\uC774 \uC628 \uACBD\uC6B0\r\n if (_isJungJoinable(previous_code, code)) { //\uC774\uC804 \uC911\uC131\uACFC \uD569\uCCD0\uC9C8 \uC218 \uC788\uB294 \uACBD\uC6B0\r\n _makeHangul(i);\r\n stage = 0;\r\n } else { //\uC911\uC131\uC774 \uC654\uC9C0\uB9CC \uBABB\uD569\uCE58\uB294 \uACBD\uC6B0. \u3152\u3157 \uAC19\uC740\r\n _makeHangul(i - 1);\r\n }\r\n } else { // \uC544\uB2C8\uBA74 \uC790\uC74C\uC774 \uC628 \uACBD\uC6B0.\r\n _makeHangul(i - 1);\r\n stage = 1;\r\n }\r\n } else if (stage == 5) { // \uCD08\uC131\uC774 \uC5F0\uC18D\uD574\uC11C \uB450\uAC1C \uC628 \uC0C1\uD0DC \u313A\r\n if (_isJung(code)) { //\uC774\uBC88\uC5D0 \uC911\uC131\uC774\uBA74 \u3139\uAC00\r\n _makeHangul(i - 2);\r\n stage = 2;\r\n } else {\r\n _makeHangul(i - 1);\r\n stage = 1;\r\n }\r\n }\r\n previous_code = code;\r\n }\r\n _makeHangul(i - 1);\r\n return result.join('');\r\n };\r\n\r\n var search = function (a, b) {\r\n var ad = disassemble(a).join(''),\r\n bd = disassemble(b).join('')\r\n ;\r\n\r\n return ad.indexOf(bd);\r\n };\r\n\r\n var rangeSearch = function (haystack, needle) {\r\n var hex = disassemble(haystack).join(''),\r\n nex = disassemble(needle).join(''),\r\n grouped = disassemble(haystack, true),\r\n re = new RegExp(nex, 'gi'),\r\n indices = [],\r\n result;\r\n\r\n if (!needle.length) return [];\r\n\r\n while ((result = re.exec(hex))) {\r\n indices.push(result.index);\r\n }\r\n\r\n function findStart(index) {\r\n for (var i = 0, length = 0; i < grouped.length; ++i) {\r\n length += grouped[i].length;\r\n if (index < length) return i;\r\n }\r\n }\r\n\r\n function findEnd(index) {\r\n for (var i = 0, length = 0; i < grouped.length; ++i) {\r\n length += grouped[i].length;\r\n if (index + nex.length <= length) return i;\r\n }\r\n }\r\n\r\n return indices.map(function (i) {\r\n return [findStart(i), findEnd(i)];\r\n });\r\n };\r\n\r\n function Searcher(string) {\r\n this.string = string;\r\n this.disassembled = disassemble(string).join('');\r\n }\r\n\r\n Searcher.prototype.search = function (string) {\r\n return disassemble(string).join('').indexOf(this.disassembled);\r\n };\r\n var endsWithConsonant = function (string) {\r\n if (typeof string === 'object') {\r\n string = string.join('');\r\n }\r\n\r\n var code = string.charCodeAt(string.length - 1);\r\n\r\n if (_isHangul(code)) { // \uC644\uC131\uB41C \uD55C\uAE00\uC774\uBA74\r\n code -= HANGUL_OFFSET;\r\n var jong = code % 28;\r\n if (jong > 0) {\r\n return true;\r\n }\r\n } else if (_isConsonant(code)) { //\uC790\uC74C\uC774\uBA74\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n var endsWith = function (string, target) {\r\n return disassemble(string).pop() === target;\r\n };\r\n\r\n\r\n var hangul = {\r\n disassemble: disassemble,\r\n d: disassemble, // alias for disassemble\r\n disassembleToString: disassembleToString,\r\n ds: disassembleToString, // alias for disassembleToString\r\n assemble: assemble,\r\n a: assemble, // alias for assemble\r\n search: search,\r\n rangeSearch: rangeSearch,\r\n Searcher: Searcher,\r\n endsWithConsonant: endsWithConsonant,\r\n endsWith: endsWith,\r\n isHangul: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isHangul(c);\r\n },\r\n isComplete: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isHangul(c);\r\n },\r\n isConsonant: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isConsonant(c);\r\n },\r\n isVowel: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isJung(c);\r\n },\r\n isCho: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isCho(c);\r\n },\r\n isJong: function (c) {\r\n if (typeof c === 'string')\r\n c = c.charCodeAt(0);\r\n return _isJong(c);\r\n },\r\n isHangulAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isHangul(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n },\r\n isCompleteAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isHangul(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n },\r\n isConsonantAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isConsonant(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n },\r\n isVowelAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isJung(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n },\r\n isChoAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isCho(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n },\r\n isJongAll: function (str) {\r\n if (typeof str !== 'string') return false;\r\n for (var i = 0; i < str.length; i++) {\r\n if (!_isJong(str.charCodeAt(i))) return false;\r\n }\r\n return true;\r\n }\r\n };\r\n\r\n if (typeof define == 'function' && define.amd) {\r\n define(function () {\r\n return hangul;\r\n });\r\n } else if (typeof module !== 'undefined') {\r\n module.exports = hangul;\r\n } else {\r\n window.Hangul = hangul;\r\n }\r\n})();\r\n\r\n", "/*\n * Copyright (C) 2024 Yomitan Authors\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program. If not, see .\n */\n\nexport * as Hangul from 'hangul-js';\n"], "mappings": "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", "names": ["code", "hangul"] }