forked from 738/inko
-
Notifications
You must be signed in to change notification settings - Fork 0
/
inko.min.js.map
1 lines (1 loc) · 32.4 KB
/
inko.min.js.map
1
{"version":3,"sources":["inko.min.js"],"names":["영어","한글","초성","중성","종성","가","영어index","en","x","i","length","한글index","kr","connectableConsonant","ㄱㅅ","ㄴㅈ","ㄴㅎ","ㄹㄱ","ㄹㅁ","ㄹㅂ","ㄹㅅ","ㄹㅌ","ㄹㅍ","ㄹㅎ","ㅂㅅ","connectableVowel","ㅗㅏ","ㅗㅐ","ㅗㅣ","ㅜㅓ","ㅜㅔ","ㅜㅣ","ㅡㅣ","Inko","this","prototype","VERSION","en2ko","input","result","undefined","_초성","_중성","_종성","char","index","indexOf","_한글","한글생성","새초성","en2kr","eng","self","stateLength","transitions","last","list","combine","arr","group","forEach","cur","push","charSet","code","map","join","w","idx","apply","c","curIsVowel","state","tmp","flush","chr","transition","nxtState","diff","splice","ko2en","_분리","_코드","charCodeAt","한글분리","j","초","중","종","String","fromCharCode","코드","Math","floor","중1","중2","종1","종2","is한글","Error","test","exports","module","define","amd","importScripts","inko","window","document"],"mappings":"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","file":"inko.min.js","sourcesContent":["// (c) 2018 Jon Jee\n// Inko may be freely distributed or modified under the MIT license.\n\n(function () {\n // constants\n var 영어 = \"rRseEfaqQtTdwWczxvgASDFGZXCVkoiOjpuPhynbmlYUIHJKLBNM\"; // 33 + 19개\n var 한글 = \"ㄱㄲㄴㄷㄸㄹㅁㅂㅃㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅁㄴㅇㄹㅎㅋㅌㅊㅍㅏㅐㅑㅒㅓㅔㅕㅖㅗㅛㅜㅠㅡㅣㅛㅕㅑㅗㅓㅏㅣㅠㅜㅡ\"; // 33 + 19개\n var 초성 = \"ㄱㄲㄴㄷㄸㄹㅁㅂㅃㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎ\"; // 19개\n var 중성 = \"ㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣ\"; // 21개\n var 종성 = \"ㄱㄲㄳㄴㄵㄶㄷㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅄㅅㅆㅇㅈㅊㅋㅌㅍㅎ\"; // 27개\n var 첫모음 = 28;\n var 가 = 44032;\n var 힣 = 55203;\n var ㄱ = 12593;\n var ㅣ = 12643;\n\n var 영어index = (function (en) {\n var x = {};\n for (var i = 0; i < en.length; ++i) x[en[i]] = i;\n return x;\n }(영어));\n\n var 한글index = (function (kr) {\n var x = {};\n for (var i = 0; i < kr.length; ++i) x[kr[i]] = i;\n return x;\n }(한글));\n\n var connectableConsonant = {\n 'ㄱㅅ': 'ㄳ',\n 'ㄴㅈ': 'ㄵ',\n 'ㄴㅎ': 'ㄶ',\n 'ㄹㄱ': 'ㄺ',\n 'ㄹㅁ': 'ㄻ',\n 'ㄹㅂ': 'ㄼ',\n 'ㄹㅅ': 'ㄽ',\n 'ㄹㅌ': 'ㄾ',\n 'ㄹㅍ': 'ㄿ',\n 'ㄹㅎ': 'ㅀ',\n 'ㅂㅅ': 'ㅄ'\n };\n\n var connectableVowel = {\n 'ㅗㅏ': 'ㅘ',\n 'ㅗㅐ': 'ㅙ',\n 'ㅗㅣ': 'ㅚ',\n 'ㅜㅓ': 'ㅝ',\n 'ㅜㅔ': 'ㅞ',\n 'ㅜㅣ': 'ㅟ',\n 'ㅡㅣ': 'ㅢ'\n };\n\n // constructor\n function Inko() {\n return this;\n }\n\n Inko.prototype.VERSION = '1.0.5';\n\n Inko.prototype.en2ko = function (input) {\n var result = '';\n if (input === '' || input === undefined) return result;\n var _초성 = -1, _중성 = -1, _종성 = -1;\n\n for (var i = 0; i < input.length; i++) {\n var char = input[i];\n var index = 영어.indexOf(char);\n var _한글 = 한글[index];\n // 한글이 아니라면\n if (index === -1) {\n // 남아있는 한글 처리\n if (_초성 !== -1) {\n if (_중성 !== -1) result += this.한글생성(_초성, _중성, _종성); // 초성 + 중성 + (종성)\n else result += 초성[_초성]; // 초성만\n } else {\n if (_중성 !== -1) result += 중성[_중성]; // 중성만\n else if (_종성 !== -1) result += 종성[_종성]; // 종성만 (복자음)\n }\n _초성 = -1, _중성 = -1, _종성 = -1;\n result += char;\n }\n // 자음이라면\n else if (index < 첫모음) {\n if (_중성 !== -1) {\n // 중성만 입력됨\n if (_초성 === -1) {\n result += 중성[_중성];\n _중성 = -1;\n _초성 = 초성.indexOf(_한글);\n }\n // 초성 + 중성 입력됨\n else {\n // 종성 입력중\n if (_종성 === -1) {\n _종성 = 종성.indexOf(_한글);\n // ㄸ,ㅃ,ㅉ와 같이 종성에 못오는 자음들의 경우 초성으로 처리해야함\n if (_종성 === -1) {\n result += this.한글생성(_초성, _중성, _종성);\n _초성 = 초성.indexOf(_한글);\n _중성 = -1;\n }\n }\n // 복자음 처리\n else if (_종성 === 종성.indexOf('ㄱ') && _한글 === 'ㅅ') _종성 = 종성.indexOf('ㄳ'); // 복자음 ㄳ\n else if (_종성 === 종성.indexOf('ㄴ') && _한글 === 'ㅈ') _종성 = 종성.indexOf('ㄵ'); // 복자음 ㄵ\n else if (_종성 === 종성.indexOf('ㄴ') && _한글 === 'ㅎ') _종성 = 종성.indexOf('ㄶ'); // 복자음 ㄶ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㄱ') _종성 = 종성.indexOf('ㄺ'); // 복자음 ㄺ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅁ') _종성 = 종성.indexOf('ㄻ'); // 복자음 ㄻ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅂ') _종성 = 종성.indexOf('ㄼ'); // 복자음 ㄼ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅅ') _종성 = 종성.indexOf('ㄽ'); // 복자음 ㄽ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅌ') _종성 = 종성.indexOf('ㄾ'); // 복자음 ㄾ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅍ') _종성 = 종성.indexOf('ㄿ'); // 복자음 ㄿ\n else if (_종성 === 종성.indexOf('ㄹ') && _한글 === 'ㅎ') _종성 = 종성.indexOf('ㅀ'); // 복자음 ㅀ\n else if (_종성 === 종성.indexOf('ㅂ') && _한글 === 'ㅅ') _종성 = 종성.indexOf('ㅄ'); // 복자음 ㅄ\n // 복자음이 아니므로 초성으로 처리\n else {\n result += this.한글생성(_초성, _중성, _종성);\n _중성 = -1, _종성 = -1;\n _초성 = 초성.indexOf(_한글);\n }\n }\n }\n // 중성이 없음\n else {\n // 초성이 없음\n if (_초성 === -1) _초성 = 초성.indexOf(_한글);\n // 초성이 있는데 또 자음이 들어옴\n else {\n result += 초성[_초성];\n _초성 = 초성.indexOf(_한글);\n }\n }\n }\n // 모음이라면\n else {\n if (_종성 !== -1) {\t\t\t\t\t\t// (앞글자 종성), 초성+중성\n // 복자음 다시 분해\n var 새초성;\t\t\t // 임시 초성\n if (_종성 === 종성.indexOf('ㄳ')) {\t\t\t\t\t// ㄱ / ㅅ\n _종성 = 종성.indexOf('ㄱ');\n 새초성 = 초성.indexOf('ㅅ');\n } else if (_종성 === 종성.indexOf('ㄵ')) {\t\t\t// ㄴ / ㅈ\n _종성 = 종성.indexOf('ㄴ');\n 새초성 = 초성.indexOf('ㅈ');\n } else if (_종성 === 종성.indexOf('ㄶ')) {\t\t\t// ㄴ / ㅎ\n _종성 = 종성.indexOf('ㄴ');\n 새초성 = 초성.indexOf('ㅎ');\n } else if (_종성 === 종성.indexOf('ㄺ')) {\t\t\t// ㄹ / ㄱ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㄱ');\n } else if (_종성 === 종성.indexOf('ㄻ')) {\t\t\t// ㄹ / ㅁ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅁ');\n } else if (_종성 === 종성.indexOf('ㄼ')) {\t\t\t// ㄹ / ㅂ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅂ');\n } else if (_종성 === 종성.indexOf('ㄽ')) {\t\t\t// ㄹ / ㅅ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅅ');\n } else if (_종성 === 종성.indexOf('ㄾ')) {\t\t\t// ㄹ / ㅌ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅌ');\n } else if (_종성 === 종성.indexOf('ㄿ')) {\t\t\t// ㄹ / ㅍ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅍ');\n } else if (_종성 === 종성.indexOf('ㅀ')) {\t\t\t// ㄹ / ㅎ\n _종성 = 종성.indexOf('ㄹ');\n 새초성 = 초성.indexOf('ㅎ');\n } else if (_종성 === 종성.indexOf('ㅄ')) {\t\t\t// ㅂ / ㅅ\n _종성 = 종성.indexOf('ㅂ');\n 새초성 = 초성.indexOf('ㅅ');\n }\n // 복자음 아님 \n else {\n 새초성 = 초성.indexOf(종성[_종성]);\n _종성 = -1;\n }\n // 앞글자가 초성 + 중성 + (종성)\n if (_초성 != -1) result += this.한글생성(_초성, _중성, _종성);\n // 복자음만 있음\n else result += 종성[_종성];\n _초성 = 새초성;\n _중성 = -1;\n _종성 = -1;\n }\n if (_중성 === -1) _중성 = 중성.indexOf(_한글);\n else if (_중성 === 중성.indexOf('ㅗ') && _한글 === 'ㅏ') _중성 = 중성.indexOf('ㅘ');\n else if (_중성 === 중성.indexOf('ㅗ') && _한글 === 'ㅐ') _중성 = 중성.indexOf('ㅙ');\n else if (_중성 === 중성.indexOf('ㅗ') && _한글 === 'ㅣ') _중성 = 중성.indexOf('ㅚ');\n else if (_중성 === 중성.indexOf('ㅜ') && _한글 === 'ㅓ') _중성 = 중성.indexOf('ㅝ');\n else if (_중성 === 중성.indexOf('ㅜ') && _한글 === 'ㅔ') _중성 = 중성.indexOf('ㅞ');\n else if (_중성 === 중성.indexOf('ㅜ') && _한글 === 'ㅣ') _중성 = 중성.indexOf('ㅟ');\n else if (_중성 === 중성.indexOf('ㅡ') && _한글 === 'ㅣ') _중성 = 중성.indexOf('ㅢ');\n // 조합 안되는 모음\n else {\n // 초성 + 중성 후 중성\n if (_초성 != -1) {\n result += this.한글생성(_초성, _중성, _종성);\n _초성 = -1;\n }\n // 중성 후 중성\n else result += 중성[_중성];\n _중성 = -1;\n result += _한글;\n }\n }\n }\n // 남아있는 한글 처리\n if (_초성 !== -1) {\n // 초성 + 중성 + (종성)\n if (_중성 !== -1) result += this.한글생성(_초성, _중성, _종성);\n // 초성만\n else result += 초성[_초성]\n } else {\n // 중성만\n if (_중성 !== -1) result += 중성[_중성]\n // 종성만 (복자음)\n else if (_종성 !== -1) result += 종성[_종성]\n }\n return result;\n }\n\n Inko.prototype.en2kr = function (eng) {\n var self = this;\n var stateLength = [0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5];\n var transitions = [\n [1, 1, 2, 2], // 0, EMPTY\n [3, 1, 4, 4], // 1, 자\n [1, 1, 5, 2], // 2, 모\n [3, 1, 7, 7], // 3, 자자\n [6, 1, 7, 2], // 4, 자모\n [1, 1, 2, 2], // 5, 모모\n [9, 1, 4, 4], // 6, 자모자\n [9, 1, 2, 2], // 7, 자모모\n [1, 1, 4, 4], // 8, 자모자자 \n [10, 1, 4, 4],// 9, 자모모자\n [1, 1, 4, 4], // 10, 자모모자자\n ];\n\n var last = function (list) {\n return list[list.length - 1];\n };\n\n var combine = function (arr) {\n var group = [];\n arr.forEach(function (cur, i) {\n if (i === 0 ||\n (한글index[last(group)[0]] < 첫모음 !== cur < 첫모음)) {\n group.push([한글[cur]]);\n } else {\n last(group).push(한글[cur]);\n }\n });\n\n var charSet = [초성, 중성, 종성];\n var code = [-1, -1, -1];\n\n group.map(function (arr) {\n return arr.join('')\n })\n .forEach(function (w) {\n for (var i = 0; i < 3; ++i) {\n if (code[i] !== -1) continue;\n var idx = charSet[i].indexOf(\n connectableConsonant[w] ||\n connectableVowel[w] ||\n w);\n if (idx !== -1) {\n code[i] = idx;\n break;\n }\n }\n });\n\n // if (code[0] === -1 && code[1] === -1) {\n // return String.fromCharCode(code[2] + 0x3131);\n // } else if (code[0] !== -1 && code[1] === -1) {\n // return String.fromCharCode(code[0] + 0x3131);\n // } else if (code[0] === -1 && code[1] !== -1) {\n // return String.fromCharCode(code[1] + 0x314f);\n // } else {\n return self.한글생성.apply(this, code);\n // }\n };\n\n var ans = (function () {\n var length = eng.length;\n var last = -1;\n var result = [];\n var state = 0;\n var tmp = [];\n\n var flush = function () {\n if (tmp.length > 0) result.push(combine(tmp));\n tmp = [];\n };\n\n for (var i = 0; i < length; ++i) {\n var chr = eng[i];\n var cur = 영어index[chr];\n if (typeof cur === 'undefined') {\n state = 0;\n flush();\n result.push(chr);\n } else {\n var transition = (function () {\n var c = (한글[last] || '') + 한글[cur];\n var lastIsVowel = last >= 첫모음;\n var curIsVowel = cur >= 첫모음;\n if (!curIsVowel) {\n if (lastIsVowel) {\n return [4 /* ㄸ */, 8 /* ㅃ */, 13 /* ㅉ */]\n .indexOf(cur) === -1 ? 0 : 1\n }\n return connectableConsonant[c] ? 0 : 1\n } else if (curIsVowel) {\n return connectableVowel[c] ? 2 : 3\n }\n return 2;\n }());\n var nxtState = transitions[state][transition];\n tmp.push(cur);\n var diff = tmp.length - stateLength[nxtState];\n if (diff) result.push(combine(tmp.splice(0, diff)));\n state = nxtState;\n last = cur;\n }\n }\n flush();\n return result.join('');\n }());\n return ans;\n };\n\n Inko.prototype.ko2en = function (input) {\n var result = '';\n if (input === '' || input === undefined) return result;\n var _분리 = [-1, -1, -1, -1, -1];\n\n for (var i = 0; i < input.length; i++) {\n var _한글 = input[i];\n var _코드 = _한글.charCodeAt();\n // 가 ~ 힣 사이에 있는 한글이라면\n if ((_코드 >= 가 && _코드 <= 힣) || (_코드 >= ㄱ && _코드 <= ㅣ)) {\n _분리 = this.한글분리(_한글);\n }\n // 한글이 아니라면\n else {\n result += _한글;\n // 분리 배열 초기화\n _분리 = [-1, -1, -1, -1, -1];\n }\n\n for (var j = 0; j < _분리.length; j++) {\n if (_분리[j] !== -1)\n result += 영어[_분리[j]];\n }\n }\n return result;\n }\n\n // 초성, 중성, 종성의 charCode를 받아서 합친 한글의 charCode를 반환함\n Inko.prototype.한글생성 = function (초, 중, 종) {\n if (초 === -1 && 중 === -1) {\n return String.fromCharCode(종 + 0x3131);\n } else if (초 !== -1 && 중 === -1) {\n return String.fromCharCode(초 + 0x3131);\n } else if (초 === -1 && 중 !== -1) {\n return String.fromCharCode(중 + 0x314f);\n }\n return String.fromCharCode(44032 + 초 * 588 + 중 * 28 + 종 + 1);\n }\n\n // 한글 입력값으로 받아서 초성, 중성, 종성 분리해줌\n Inko.prototype.한글분리 = function (_한글) {\n var 코드 = _한글.charCodeAt();\n\n if (코드 >= 가 && 코드 <= 힣) {\n var 초 = Math.floor((코드 - 가) / 588);\n var 중 = Math.floor((코드 - 가 - 초 * 588) / 28);\n var 종 = 코드 - 가 - 초 * 588 - 중 * 28 - 1;\n var 중1 = 중, 중2 = -1, 종1 = 종, 종2 = -1;\n\n if (중 == 중성.indexOf(\"ㅘ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅏ\");\n else if (중 == 중성.indexOf(\"ㅙ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅐ\");\n else if (중 == 중성.indexOf(\"ㅚ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅣ\");\n else if (중 == 중성.indexOf(\"ㅝ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅓ\");\n else if (중 == 중성.indexOf(\"ㅞ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅔ\");\n else if (중 == 중성.indexOf(\"ㅟ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅣ\");\n else if (중 == 중성.indexOf(\"ㅢ\")) 중1 = 한글.indexOf(\"ㅡ\"), 중2 = 한글.indexOf(\"ㅣ\");\n\n if (종 == 종성.indexOf(\"ㄳ\")) 종1 = 한글.indexOf(\"ㄱ\"), 종2 = 한글.indexOf(\"ㅅ\");\n else if (종 == 종성.indexOf(\"ㄵ\")) 종1 = 한글.indexOf(\"ㄴ\"), 종2 = 한글.indexOf(\"ㅈ\");\n else if (종 == 종성.indexOf(\"ㄶ\")) 종1 = 한글.indexOf(\"ㄴ\"), 종2 = 한글.indexOf(\"ㅎ\");\n else if (종 == 종성.indexOf(\"ㄺ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㄱ\");\n else if (종 == 종성.indexOf(\"ㄻ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅁ\");\n else if (종 == 종성.indexOf(\"ㄼ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅂ\");\n else if (종 == 종성.indexOf(\"ㄽ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅅ\");\n else if (종 == 종성.indexOf(\"ㄾ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅌ\");\n else if (종 == 종성.indexOf(\"ㄿ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅍ\");\n else if (종 == 종성.indexOf(\"ㅀ\")) 종1 = 한글.indexOf(\"ㄹ\"), 종2 = 한글.indexOf(\"ㅎ\");\n else if (종 == 종성.indexOf(\"ㅄ\")) 종1 = 한글.indexOf(\"ㅂ\"), 종2 = 한글.indexOf(\"ㅅ\");\n\n // 복모음이 아니라면\n if (중2 === -1) 중1 = 한글.indexOf(중성[중]);\n\n // 복자음이 아니라면\n if (종2 === -1) 종1 = 한글.indexOf(종성[종]);\n\n return [초, 중1, 중2, 종1, 종2];\n } else if (코드 >= ㄱ && 코드 <= ㅣ) {\n if (초성.indexOf(_한글) > -1) {\n var 초 = 한글.indexOf(_한글);\n return [초, -1, -1, -1, -1];\n } else if (중성.indexOf(_한글) > -1) {\n var 중 = 중성.indexOf(_한글);\n var 중1 = 중, 중2 = -1;\n if (중 == 중성.indexOf(\"ㅘ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅏ\");\n else if (중 == 중성.indexOf(\"ㅙ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅐ\");\n else if (중 == 중성.indexOf(\"ㅚ\")) 중1 = 한글.indexOf(\"ㅗ\"), 중2 = 한글.indexOf(\"ㅣ\");\n else if (중 == 중성.indexOf(\"ㅝ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅓ\");\n else if (중 == 중성.indexOf(\"ㅞ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅔ\");\n else if (중 == 중성.indexOf(\"ㅟ\")) 중1 = 한글.indexOf(\"ㅜ\"), 중2 = 한글.indexOf(\"ㅣ\");\n else if (중 == 중성.indexOf(\"ㅢ\")) 중1 = 한글.indexOf(\"ㅡ\"), 중2 = 한글.indexOf(\"ㅣ\");\n\n // 복모음이 아니라면\n if (중2 === -1) 중1 = 한글.indexOf(중성[중]);\n\n return [-1, 중1, 중2, -1, -1];\n }\n }\n return [-1, -1, -1, -1, -1];\n }\n\n Inko.prototype.is한글 = function (char) {\n if (char.length > 1) throw new Error(\"한글자가 아닙니다.\");\n return /[ㄱ-ㅎ|ㅏ-ㅣ|기-힣]/.test(char);\n }\n\n // CommonJS module\n if (typeof exports !== 'undefined') {\n if (typeof module !== 'undefined' && module.exports) {\n exports = module.exports = Inko;\n }\n exports.Inko = Inko;\n }\n\n // Register as an anonymous AMD module\n if (typeof define === 'function' && define.amd) {\n define([], function () {\n return Inko;\n });\n }\n\n // if there is a importsScrips object define chance for worker\n // allows worker to use full Chance functionality with seed\n if (typeof importScripts !== 'undefined') {\n inko = new Inko();\n self.Inko = Inko;\n }\n\n // If there is a window object, that at least has a document property,\n // instantiate and define chance on the window\n if (typeof window === \"object\" && typeof window.document === \"object\") {\n window.Inko = Inko;\n window.inko = new Inko();\n }\n})();\n"]}