diff options
Diffstat (limited to 'themes/CodeIT/assets/lib/lunr/lunr.th.js')
-rw-r--r-- | themes/CodeIT/assets/lib/lunr/lunr.th.js | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/themes/CodeIT/assets/lib/lunr/lunr.th.js b/themes/CodeIT/assets/lib/lunr/lunr.th.js deleted file mode 100644 index e8922ee..0000000 --- a/themes/CodeIT/assets/lib/lunr/lunr.th.js +++ /dev/null @@ -1,109 +0,0 @@ -/*! - * Lunr languages, `Thai` language - * https://github.com/MihaiValentin/lunr-languages - * - * Copyright 2017, Keerati Thiwanruk - * http://www.mozilla.org/MPL/ - */ -/*! - * based on - * Snowball JavaScript Library v0.3 - * http://code.google.com/p/urim/ - * http://snowball.tartarus.org/ - * - * Copyright 2010, Oleg Mazko - * http://www.mozilla.org/MPL/ - */ - -/** - * export the module via AMD, CommonJS or as a browser global - * Export code from https://github.com/umdjs/umd/blob/master/returnExports.js - */ - -(function (root, factory) { - if (typeof define === "function" && define.amd) { - // AMD. Register as an anonymous module. - define(factory); - } else if (typeof exports === "object") { - /** - * Node. Does not work with strict CommonJS, but - * only CommonJS-like environments that support module.exports, - * like Node. - */ - module.exports = factory(); - } else { - // Browser globals (root is window) - factory()(root.lunr); - } -})(this, function () { - /** - * Just return a value to define the module export. - * This example returns an object, but the module - * can return a function as the exported value. - */ - return function (lunr) { - /* throw error if lunr is not yet included */ - if ("undefined" === typeof lunr) { - throw new Error( - "Lunr is not present. Please include / require Lunr before this script." - ); - } - - /* throw error if lunr stemmer support is not yet included */ - if ("undefined" === typeof lunr.stemmerSupport) { - throw new Error( - "Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script." - ); - } - - /* - Thai tokenization is the same to Japanense, which does not take into account spaces. - So, it uses the same logic to assign tokenization function due to different Lunr versions. - */ - var isLunr2 = lunr.version[0] == "2"; - - /* register specific locale function */ - lunr.th = function () { - this.pipeline.reset(); - this.pipeline.add( - /*lunr.th.stopWordFilter,*/ - lunr.th.trimmer - ); - - if (isLunr2) { - // for lunr version 2.0.0 - this.tokenizer = lunr.th.tokenizer; - } else { - if (lunr.tokenizer) { - // for lunr version 0.6.0 - lunr.tokenizer = lunr.th.tokenizer; - } - if (this.tokenizerFn) { - // for lunr version 0.7.0 -> 1.0.0 - this.tokenizerFn = lunr.th.tokenizer; - } - } - }; - - /* lunr trimmer function */ - lunr.th.wordCharacters = "[\u0e00-\u0e7f]"; - lunr.th.trimmer = lunr.trimmerSupport.generateTrimmer( - lunr.th.wordCharacters - ); - lunr.Pipeline.registerFunction(lunr.th.trimmer, "trimmer-th"); - - var segmenter = lunr.wordcut; - segmenter.init(); - lunr.th.tokenizer = function (obj) { - //console.log(obj); - if (!arguments.length || obj == null || obj == undefined) return []; - if (Array.isArray(obj)) - return obj.map(function (t) { - return isLunr2 ? new lunr.Token(t) : t; - }); - - var str = obj.toString().replace(/^\s+/, ""); - return segmenter.cut(str).split("|"); - }; - }; -}); |