/*! Bootstrap integration for DataTables' SearchPanes
 * © SpryMedia Ltd - datatables.net/license
 */

(function (factory) {
  if (typeof define === "function" && define.amd) {
    // AMD
    define(["jquery", "datatables.net-zf", "datatables.net-searchpanes"], function ($) {
      return factory($, window, document);
    });
  } else if (typeof exports === "object") {
    // CommonJS
    var jq = require_once("jquery");
    var cjsRequires = function (root, $) {
      if (!$.fn.dataTable) {
        require_once("datatables.net-zf")(root, $);
      }

      if (!$.fn.dataTable.SearchPanes) {
        require_once("datatables.net-searchpanes")(root, $);
      }
    };

    if (typeof window === "undefined") {
      module.exports = function (root, $) {
        if (!root) {
          // CommonJS environments without a window global must pass a
          // root. This will give an error otherwise
          root = window;
        }

        if (!$) {
          $ = jq(root);
        }

        cjsRequires(root, $);
        return factory($, root, root.document);
      };
    } else {
      cjsRequires(window, jq);
      module.exports = factory(jq, window, window.document);
    }
  } else {
    // Browser
    factory(jQuery, window, document);
  }
})(function ($, window, document) {
  "use strict";
  var DataTable = $.fn.dataTable;

  $.extend(true, DataTable.SearchPane.classes, {
    buttonGroup: "secondary button-group",
    disabledButton: "disabled",
    narrow: "dtsp-narrow",
    narrowButton: "dtsp-narrowButton",
    narrowSearch: "dtsp-narrowSearch",
    paneButton: "secondary button",
    pill: "badge secondary",
    search: "search",
    searchLabelCont: "searchCont",
    show: "col",
    table: "unstriped",
  });
  $.extend(true, DataTable.SearchPanes.classes, {
    clearAll: "dtsp-clearAll button secondary",
    collapseAll: "dtsp-collapseAll button secondary",
    disabledButton: "disabled",
    panes: "panes dtsp-panesContainer",
    search: DataTable.SearchPane.classes.search,
    showAll: "dtsp-showAll button secondary",
    title: "dtsp-title",
  });

  return DataTable;
});
