@novel-segment/table-line
Version:
1 lines • 1.93 kB
Source Map (JSON)
{"version":3,"file":"index.cjs.production.min.cjs","sources":["../src/index.ts"],"sourcesContent":["import { IDictRow, stringifyLine } from '@novel-segment/loader-line';\nimport { AbstractTableDictCore, IDICT, IDICT2, IOptions } from '@novel-segment/table-core-abstract';\n\n/**\n * 原版 node-segment 的格式\n */\nexport abstract class TableDictLine extends AbstractTableDictCore<boolean>\n{\n\tpublic override exists(data, ...argv)\n\t{\n\t\tlet w = this._exists(data);\n\n\t\tlet bool = this.TABLE[w];\n\n\t\treturn typeof bool === 'boolean' ? bool : null\n\t}\n\n\tadd(word: string | string[])\n\t{\n\t\tlet self = this;\n\n\t\tif (Array.isArray(word))\n\t\t{\n\t\t\tword.forEach(v => self._add(v))\n\t\t}\n\t\telse\n\t\t{\n\t\t\tself._add(word);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t_add(word: string)\n\t{\n\t\tword = word.trim();\n\n\t\tif (word)\n\t\t{\n\t\t\tthis.TABLE[word] = true;\n\t\t}\n\t}\n\n\toverride remove(word: string)\n\t{\n\t\tlet self = this;\n\t\tself._remove(word);\n\n\t\treturn this;\n\t}\n\n\toverride _remove(word: string)\n\t{\n\t\tdelete this.TABLE[word]\n\t}\n\n\toverride stringify(LF = \"\\n\")\n\t{\n\t\tlet self = this;\n\n\t\treturn Object.entries(self.TABLE)\n\t\t\t.reduce(function (a, [w, bool])\n\t\t\t{\n\t\t\t\tif (bool)\n\t\t\t\t{\n\t\t\t\t\tlet line = stringifyLine(w);\n\t\t\t\t\ta.push(line);\n\t\t\t\t}\n\n\t\t\t\treturn a\n\t\t\t}, [])\n\t\t\t.join(typeof LF === 'string' ? LF : \"\\n\")\n\t\t\t;\n\t}\n}\n\nexport default TableDictLine\n"],"names":["exists","data","argv","w","this","_exists","bool","TABLE","add","word","self","Array","isArray","forEach","v","_add","trim","_remove"],"mappings":";;;;;;;;;EAAAA,MAAAA,CAAAC,MAAAC;IACA,IAAAC,IAAAC,KAAAC,QAAAJ,IAOiBK,IAAAF,KAAAG,MAAAJ;;;EAMfK,GAAAA,CAAcC;IAGY,IAAAC,IAAAN;IAsBzB,OAlBDO,MAAAC,eAGCC,SAAAC,KAAAJ,EAAAK,KAAAD,OAODJ,EAAAK,KAAAN,IAQCL;;OAIOK;KAGRA,IAAAA,EAAAO;;;WAeEZ,KAICa,QACAR;;;WAOHL,KAAAG,MAAAE;;;;;;;;;;;;;"}