UNPKG

hangul-util

Version:
31 lines (29 loc) 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.formatJosa = formatJosa; exports.josa = josa; var _constant = require("./constant"); function josa() { var _josaCase$split$josaI; var letter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; var _josa = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "이"; var hasJong = (letter.charCodeAt(letter.length - 1) - _constant.HANGUL_START_CHARCODE) % _constant.JONG_PERIOD > 0; var josaIndex = hasJong ? 0 : 1; var josa = _josa.replace(/\[|\]/g, ""); var josaCase = getJosaCasc(josa.split("/")[0]) || josa; return (_josaCase$split$josaI = josaCase.split("/")[josaIndex]) !== null && _josaCase$split$josaI !== void 0 ? _josaCase$split$josaI : josa; } // 오늘[은/는] 사과[이/가] function formatJosa() { var letter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; return letter.replace(/[가-힣]\[[가-힣]+\/[가-힣]+\]/g, function (match) { return match[0] + josa(match[0], match.slice(1)); }); } function getJosaCasc() { var _JOSA_LIST$josa; var josa = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ""; return (_JOSA_LIST$josa = _constant.JOSA_LIST[josa]) !== null && _JOSA_LIST$josa !== void 0 ? _JOSA_LIST$josa : josa; }