/*!*************************************************** * datatables.mark.js v1.0.0 * https://github.com/julmot/datatables.mark.js * Copyright (c) 2016, Julian Motz * Released under the MIT license https://git.io/voRZ7 *****************************************************/ "use strict";((factory,window,document) => {if(typeof define==="function"&&define.amd){define(["jquery","datatables","markjs"],jQuery => {return factory(window,document,jQuery);});}else if(typeof exports==="object"){require("datatables");require("markjs");factory(window,document,require("jquery"));}else {factory(window,document,jQuery);}})((window,document,$) => {class Mark_DataTables{constructor(dtInstance,options){if(typeof $.fn.mark!=="function"||typeof $.fn.unmark!=="function"){throw new Error("jquery.mark.js is necessary for datatables.mark.js");}this.instance=dtInstance;this.options=typeof options==="object"?options:{};this.initMarkListener();}initMarkListener(){this.instance.on("draw.dt.dth column-visibility.dt.dth column-reorder.dt.dth",this.mark.bind(this));this.instance.on("destroy",() => {this.instance.off("draw.dt.dth column-visibility.dt.dth column-reorder.dt.dth");});this.mark();}mark(){const globalSearch=this.instance.search();$(this.instance.table().body()).unmark(this.options);this.instance.columns({search:"applied",page:"current"}).nodes().each((nodes,colIndex) => {const columnSearch=this.instance.column(colIndex).search(),searchVal=columnSearch||globalSearch;if(searchVal){nodes.forEach(node => {$(node).mark(searchVal,this.options);});}});}}$(document).on("init.dt.dth",(event,settings) => {if(event.namespace!=="dt"){return;}const dtInstance=$.fn.dataTable.Api(settings);let options=null;if(dtInstance.init().mark){options=dtInstance.init().mark;}else if($.fn.dataTable.defaults.mark){options=$.fn.dataTable.defaults.mark;}if(options===null){return;}new Mark_DataTables(dtInstance,options);});},window,document);