@macallumharvey/first-test-wet 1.0.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/WetButton.d.ts +9 -0
- package/dist/WetModal.d.ts +6 -0
- package/dist/first-test-wet.cjs.development.js +26 -0
- package/dist/first-test-wet.cjs.development.js.map +1 -1
- package/dist/first-test-wet.cjs.production.min.js +1 -1
- package/dist/first-test-wet.cjs.production.min.js.map +1 -1
- package/dist/first-test-wet.esm.js +26 -1
- package/dist/first-test-wet.esm.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +1 -1
- package/src/WetButton.tsx +19 -0
- package/src/WetModal.tsx +26 -0
- package/src/index.tsx +2 -2
- package/src/theme-wet-boew/assets/favicon-mobile.png +0 -0
- package/src/theme-wet-boew/assets/favicon.ico +0 -0
- package/src/theme-wet-boew/assets/logo.png +0 -0
- package/src/theme-wet-boew/assets/logo.svg +14 -0
- package/src/theme-wet-boew/css/ie8-theme.css +17370 -0
- package/src/theme-wet-boew/css/ie8-theme.min.css +193 -0
- package/src/theme-wet-boew/css/ie8-wet-boew.css +12 -0
- package/src/theme-wet-boew/css/ie8-wet-boew.min.css +7 -0
- package/src/theme-wet-boew/css/theme.css +11357 -0
- package/src/theme-wet-boew/css/theme.min.css +6 -0
- package/src/theme-wet-boew/css/wet-boew.css +12 -0
- package/src/theme-wet-boew/css/wet-boew.min.css +6 -0
- package/src/theme-wet-boew/payload.json +66 -0
- package/src/wet-boew/assets/cloud-popup-relative.png +0 -0
- package/src/wet-boew/assets/fd-slider-sprite.png +0 -0
- package/src/wet-boew/assets/loading.png +0 -0
- package/src/wet-boew/assets/mediacontrols.html +32 -0
- package/src/wet-boew/assets/sprites_share.png +0 -0
- package/src/wet-boew/assets/zoom-minus-mini.png +0 -0
- package/src/wet-boew/assets/zoom-plus-mini.png +0 -0
- package/src/wet-boew/assets/zoom-world-mini.png +0 -0
- package/src/wet-boew/css/noscript.css +112 -0
- package/src/wet-boew/css/noscript.min.css +6 -0
- package/src/wet-boew/css/polyfills/datalist.css +32 -0
- package/src/wet-boew/css/polyfills/datalist.min.css +1 -0
- package/src/wet-boew/css/polyfills/datepicker.css +47 -0
- package/src/wet-boew/css/polyfills/datepicker.min.css +1 -0
- package/src/wet-boew/css/polyfills/details.css +28 -0
- package/src/wet-boew/css/polyfills/details.min.css +1 -0
- package/src/wet-boew/css/polyfills/mathml.css +16 -0
- package/src/wet-boew/css/polyfills/mathml.min.css +1 -0
- package/src/wet-boew/css/polyfills/meter.css +24 -0
- package/src/wet-boew/css/polyfills/meter.min.css +1 -0
- package/src/wet-boew/css/polyfills/progress.css +8 -0
- package/src/wet-boew/css/polyfills/progress.min.css +1 -0
- package/src/wet-boew/css/polyfills/slider.css +229 -0
- package/src/wet-boew/css/polyfills/slider.min.css +1 -0
- package/src/wet-boew/fonts/glyphicons-halflings-regular.eot +0 -0
- package/src/wet-boew/fonts/glyphicons-halflings-regular.svg +288 -0
- package/src/wet-boew/fonts/glyphicons-halflings-regular.ttf +0 -0
- package/src/wet-boew/fonts/glyphicons-halflings-regular.woff +0 -0
- package/src/wet-boew/fonts/glyphicons-halflings-regular.woff2 +0 -0
- package/src/wet-boew/js/MathJax/mml-chtml.js +1 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
- package/src/wet-boew/js/MathJax/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
- package/src/wet-boew/js/deps/additional-methods.js +1512 -0
- package/src/wet-boew/js/deps/additional-methods.min.js +9 -0
- package/src/wet-boew/js/deps/geomap-lib.js +3758 -0
- package/src/wet-boew/js/deps/geomap-lib.min.js +1 -0
- package/src/wet-boew/js/deps/jquery.dataTables.js +15345 -0
- package/src/wet-boew/js/deps/jquery.dataTables.min.js +4 -0
- package/src/wet-boew/js/deps/jquery.flot.canvas.js +345 -0
- package/src/wet-boew/js/deps/jquery.flot.canvas.min.js +1 -0
- package/src/wet-boew/js/deps/jquery.flot.js +3168 -0
- package/src/wet-boew/js/deps/jquery.flot.min.js +1 -0
- package/src/wet-boew/js/deps/jquery.flot.orderBars.js +282 -0
- package/src/wet-boew/js/deps/jquery.flot.orderBars.min.js +1 -0
- package/src/wet-boew/js/deps/jquery.flot.pie.js +820 -0
- package/src/wet-boew/js/deps/jquery.flot.pie.min.js +1 -0
- package/src/wet-boew/js/deps/jquery.magnific-popup.js +2061 -0
- package/src/wet-boew/js/deps/jquery.magnific-popup.min.js +4 -0
- package/src/wet-boew/js/deps/jquery.validate.js +1661 -0
- package/src/wet-boew/js/deps/jquery.validate.min.js +9 -0
- package/src/wet-boew/js/deps/json-patch.js +315 -0
- package/src/wet-boew/js/deps/json-patch.min.js +1 -0
- package/src/wet-boew/js/deps/jsonpointer.js +349 -0
- package/src/wet-boew/js/deps/jsonpointer.min.js +1 -0
- package/src/wet-boew/js/deps/lang-apollo.js +53 -0
- package/src/wet-boew/js/deps/lang-apollo.min.js +1 -0
- package/src/wet-boew/js/deps/lang-basic.js +49 -0
- package/src/wet-boew/js/deps/lang-basic.min.js +1 -0
- package/src/wet-boew/js/deps/lang-clj.js +64 -0
- package/src/wet-boew/js/deps/lang-clj.min.js +1 -0
- package/src/wet-boew/js/deps/lang-css.js +160 -0
- package/src/wet-boew/js/deps/lang-css.min.js +1 -0
- package/src/wet-boew/js/deps/lang-dart.js +92 -0
- package/src/wet-boew/js/deps/lang-dart.min.js +1 -0
- package/src/wet-boew/js/deps/lang-erlang.js +94 -0
- package/src/wet-boew/js/deps/lang-erlang.min.js +1 -0
- package/src/wet-boew/js/deps/lang-go.js +59 -0
- package/src/wet-boew/js/deps/lang-go.min.js +1 -0
- package/src/wet-boew/js/deps/lang-hs.js +102 -0
- package/src/wet-boew/js/deps/lang-hs.min.js +1 -0
- package/src/wet-boew/js/deps/lang-lasso.js +67 -0
- package/src/wet-boew/js/deps/lang-lasso.min.js +1 -0
- package/src/wet-boew/js/deps/lang-lisp.js +95 -0
- package/src/wet-boew/js/deps/lang-lisp.min.js +1 -0
- package/src/wet-boew/js/deps/lang-llvm.js +63 -0
- package/src/wet-boew/js/deps/lang-llvm.min.js +1 -0
- package/src/wet-boew/js/deps/lang-logtalk.js +50 -0
- package/src/wet-boew/js/deps/lang-logtalk.min.js +1 -0
- package/src/wet-boew/js/deps/lang-lua.js +60 -0
- package/src/wet-boew/js/deps/lang-lua.min.js +1 -0
- package/src/wet-boew/js/deps/lang-matlab.js +183 -0
- package/src/wet-boew/js/deps/lang-matlab.min.js +1 -0
- package/src/wet-boew/js/deps/lang-ml.js +57 -0
- package/src/wet-boew/js/deps/lang-ml.min.js +1 -0
- package/src/wet-boew/js/deps/lang-mumps.js +140 -0
- package/src/wet-boew/js/deps/lang-mumps.min.js +1 -0
- package/src/wet-boew/js/deps/lang-n.js +67 -0
- package/src/wet-boew/js/deps/lang-n.min.js +1 -0
- package/src/wet-boew/js/deps/lang-pascal.js +49 -0
- package/src/wet-boew/js/deps/lang-pascal.min.js +1 -0
- package/src/wet-boew/js/deps/lang-proto.js +37 -0
- package/src/wet-boew/js/deps/lang-proto.min.js +1 -0
- package/src/wet-boew/js/deps/lang-r.js +59 -0
- package/src/wet-boew/js/deps/lang-r.min.js +1 -0
- package/src/wet-boew/js/deps/lang-rd.js +50 -0
- package/src/wet-boew/js/deps/lang-rd.min.js +1 -0
- package/src/wet-boew/js/deps/lang-rust.js +81 -0
- package/src/wet-boew/js/deps/lang-rust.min.js +1 -0
- package/src/wet-boew/js/deps/lang-scala.js +56 -0
- package/src/wet-boew/js/deps/lang-scala.min.js +1 -0
- package/src/wet-boew/js/deps/lang-sql.js +59 -0
- package/src/wet-boew/js/deps/lang-sql.min.js +1 -0
- package/src/wet-boew/js/deps/lang-swift.js +60 -0
- package/src/wet-boew/js/deps/lang-swift.min.js +1 -0
- package/src/wet-boew/js/deps/lang-tcl.js +63 -0
- package/src/wet-boew/js/deps/lang-tcl.min.js +1 -0
- package/src/wet-boew/js/deps/lang-tex.js +49 -0
- package/src/wet-boew/js/deps/lang-tex.min.js +1 -0
- package/src/wet-boew/js/deps/lang-vb.js +67 -0
- package/src/wet-boew/js/deps/lang-vb.min.js +1 -0
- package/src/wet-boew/js/deps/lang-vhdl.js +51 -0
- package/src/wet-boew/js/deps/lang-vhdl.min.js +1 -0
- package/src/wet-boew/js/deps/lang-wiki.js +55 -0
- package/src/wet-boew/js/deps/lang-wiki.min.js +1 -0
- package/src/wet-boew/js/deps/lang-xq.js +71 -0
- package/src/wet-boew/js/deps/lang-xq.min.js +1 -0
- package/src/wet-boew/js/deps/lang-yaml.js +45 -0
- package/src/wet-boew/js/deps/lang-yaml.min.js +1 -0
- package/src/wet-boew/js/deps/ol.js +1008 -0
- package/src/wet-boew/js/deps/ol.min.js +1 -0
- package/src/wet-boew/js/deps/prettify.js +1742 -0
- package/src/wet-boew/js/deps/prettify.min.js +1 -0
- package/src/wet-boew/js/deps/proj4.js +3 -0
- package/src/wet-boew/js/deps/proj4.min.js +1 -0
- package/src/wet-boew/js/deps/run_prettify.js +1998 -0
- package/src/wet-boew/js/deps/run_prettify.min.js +1 -0
- package/src/wet-boew/js/deps/tableparser.js +2216 -0
- package/src/wet-boew/js/deps/tableparser.min.js +1 -0
- package/src/wet-boew/js/deps/unorm.js +452 -0
- package/src/wet-boew/js/deps/unorm.min.js +1 -0
- package/src/wet-boew/js/i18n/af.js +246 -0
- package/src/wet-boew/js/i18n/af.min.js +7 -0
- package/src/wet-boew/js/i18n/ar.js +285 -0
- package/src/wet-boew/js/i18n/ar.min.js +7 -0
- package/src/wet-boew/js/i18n/bg.js +285 -0
- package/src/wet-boew/js/i18n/bg.min.js +7 -0
- package/src/wet-boew/js/i18n/cs.js +286 -0
- package/src/wet-boew/js/i18n/cs.min.js +7 -0
- package/src/wet-boew/js/i18n/de.js +355 -0
- package/src/wet-boew/js/i18n/de.min.js +7 -0
- package/src/wet-boew/js/i18n/el.js +285 -0
- package/src/wet-boew/js/i18n/el.min.js +7 -0
- package/src/wet-boew/js/i18n/en.js +246 -0
- package/src/wet-boew/js/i18n/en.min.js +7 -0
- package/src/wet-boew/js/i18n/es.js +288 -0
- package/src/wet-boew/js/i18n/es.min.js +7 -0
- package/src/wet-boew/js/i18n/et.js +283 -0
- package/src/wet-boew/js/i18n/et.min.js +7 -0
- package/src/wet-boew/js/i18n/fr.js +314 -0
- package/src/wet-boew/js/i18n/fr.min.js +7 -0
- package/src/wet-boew/js/i18n/hi.js +246 -0
- package/src/wet-boew/js/i18n/hi.min.js +7 -0
- package/src/wet-boew/js/i18n/hu.js +285 -0
- package/src/wet-boew/js/i18n/hu.min.js +7 -0
- package/src/wet-boew/js/i18n/hy.js +246 -0
- package/src/wet-boew/js/i18n/hy.min.js +7 -0
- package/src/wet-boew/js/i18n/id.js +284 -0
- package/src/wet-boew/js/i18n/id.min.js +7 -0
- package/src/wet-boew/js/i18n/is.js +283 -0
- package/src/wet-boew/js/i18n/is.min.js +7 -0
- package/src/wet-boew/js/i18n/it.js +312 -0
- package/src/wet-boew/js/i18n/it.min.js +7 -0
- package/src/wet-boew/js/i18n/iu.js +246 -0
- package/src/wet-boew/js/i18n/iu.min.js +7 -0
- package/src/wet-boew/js/i18n/ja.js +286 -0
- package/src/wet-boew/js/i18n/ja.min.js +7 -0
- package/src/wet-boew/js/i18n/ko.js +285 -0
- package/src/wet-boew/js/i18n/ko.min.js +7 -0
- package/src/wet-boew/js/i18n/lt.js +285 -0
- package/src/wet-boew/js/i18n/lt.min.js +7 -0
- package/src/wet-boew/js/i18n/lv.js +285 -0
- package/src/wet-boew/js/i18n/lv.min.js +7 -0
- package/src/wet-boew/js/i18n/nl.js +319 -0
- package/src/wet-boew/js/i18n/nl.min.js +7 -0
- package/src/wet-boew/js/i18n/pl.js +288 -0
- package/src/wet-boew/js/i18n/pl.min.js +7 -0
- package/src/wet-boew/js/i18n/pt-BR.js +246 -0
- package/src/wet-boew/js/i18n/pt-BR.min.js +7 -0
- package/src/wet-boew/js/i18n/pt.js +271 -0
- package/src/wet-boew/js/i18n/pt.min.js +7 -0
- package/src/wet-boew/js/i18n/ru.js +285 -0
- package/src/wet-boew/js/i18n/ru.min.js +7 -0
- package/src/wet-boew/js/i18n/sk.js +283 -0
- package/src/wet-boew/js/i18n/sk.min.js +7 -0
- package/src/wet-boew/js/i18n/sq.js +246 -0
- package/src/wet-boew/js/i18n/sq.min.js +7 -0
- package/src/wet-boew/js/i18n/th.js +285 -0
- package/src/wet-boew/js/i18n/th.min.js +7 -0
- package/src/wet-boew/js/i18n/tr.js +287 -0
- package/src/wet-boew/js/i18n/tr.min.js +7 -0
- package/src/wet-boew/js/i18n/uk.js +285 -0
- package/src/wet-boew/js/i18n/uk.min.js +7 -0
- package/src/wet-boew/js/i18n/vi.js +285 -0
- package/src/wet-boew/js/i18n/vi.min.js +7 -0
- package/src/wet-boew/js/i18n/zh-Hans.js +246 -0
- package/src/wet-boew/js/i18n/zh-Hans.min.js +7 -0
- package/src/wet-boew/js/i18n/zh.js +286 -0
- package/src/wet-boew/js/i18n/zh.min.js +7 -0
- package/src/wet-boew/js/ie8-wet-boew.js +3992 -0
- package/src/wet-boew/js/ie8-wet-boew.min.js +7 -0
- package/src/wet-boew/js/ie8-wet-boew2.js +15294 -0
- package/src/wet-boew/js/ie8-wet-boew2.min.js +7 -0
- package/src/wet-boew/js/jquery/2.2.4/jquery.js +9814 -0
- package/src/wet-boew/js/jquery/2.2.4/jquery.min.js +4 -0
- package/src/wet-boew/js/jquery/2.2.4/jquery.min.map +1 -0
- package/src/wet-boew/js/polyfills/datalist.js +423 -0
- package/src/wet-boew/js/polyfills/datalist.min.js +8 -0
- package/src/wet-boew/js/polyfills/datalist.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/datalist_dynamic.js +50 -0
- package/src/wet-boew/js/polyfills/datalist_dynamic.min.js +8 -0
- package/src/wet-boew/js/polyfills/datalist_dynamic.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/datepicker.js +338 -0
- package/src/wet-boew/js/polyfills/datepicker.min.js +8 -0
- package/src/wet-boew/js/polyfills/datepicker.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/details.js +126 -0
- package/src/wet-boew/js/polyfills/details.min.js +8 -0
- package/src/wet-boew/js/polyfills/details.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/jawsariafixes.js +47 -0
- package/src/wet-boew/js/polyfills/jawsariafixes.min.js +16 -0
- package/src/wet-boew/js/polyfills/jawsariafixes.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/meter.js +140 -0
- package/src/wet-boew/js/polyfills/meter.min.js +8 -0
- package/src/wet-boew/js/polyfills/meter.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/mobile.js +783 -0
- package/src/wet-boew/js/polyfills/mobile.min.js +8 -0
- package/src/wet-boew/js/polyfills/mobile.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/progress.js +107 -0
- package/src/wet-boew/js/polyfills/progress.min.js +8 -0
- package/src/wet-boew/js/polyfills/progress.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/slider.js +1343 -0
- package/src/wet-boew/js/polyfills/slider.min.js +9 -0
- package/src/wet-boew/js/polyfills/slider.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/slider_wrapper.js +73 -0
- package/src/wet-boew/js/polyfills/slider_wrapper.min.js +8 -0
- package/src/wet-boew/js/polyfills/slider_wrapper.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/svg.js +29 -0
- package/src/wet-boew/js/polyfills/svg.min.js +8 -0
- package/src/wet-boew/js/polyfills/svg.min.js.map +1 -0
- package/src/wet-boew/js/polyfills/test.js +603 -0
- package/src/wet-boew/js/polyfills/test.min.js +8 -0
- package/src/wet-boew/js/polyfills/test.min.js.map +1 -0
- package/src/wet-boew/js/wet-boew.js +17714 -0
- package/src/wet-boew/js/wet-boew.min.js +9 -0
- package/src/wet-boew/js/wet-boew.min.js.map +1 -0
- package/src/wet-boew/payload.json +1722 -0
@@ -0,0 +1,4 @@
|
|
1
|
+
/*! DataTables 1.11.4
|
2
|
+
* ©2008-2021 SpryMedia Ltd - datatables.net/license
|
3
|
+
*/
|
4
|
+
!function(n){"use strict";"function"==typeof define&&define.amd?define(["jquery"],function(t){return n(t,window,document)}):"object"==typeof exports?module.exports=function(t,e){return t=t||window,e=e||("undefined"!=typeof window?require("jquery"):require("jquery")(t)),n(e,t,t.document)}:window.DataTable=n(jQuery,window,document)}(function(P,j,y,N){"use strict";function f(t){var e=parseInt(t,10);return!isNaN(e)&&isFinite(t)?e:null}function r(t,e){return a[e]||(a[e]=new RegExp(wt(e),"g")),"string"==typeof t&&"."!==e?t.replace(/\./g,"").replace(a[e],"."):t}function o(t,e,n){var a="string"==typeof t;return!!h(t)||(e&&a&&(t=r(t,e)),n&&a&&(t=t.replace(c,"")),!isNaN(parseFloat(t))&&isFinite(t))}function n(t,e,n){return!!h(t)||((h(a=t)||"string"==typeof a)&&!!o(g(t),e,n)||null);var a}function S(t,e,n,a){var r=[],o=0,i=e.length;if(a!==N)for(;o<i;o++)t[e[o]][n]&&r.push(t[e[o]][n][a]);else for(;o<i;o++)r.push(t[e[o]][n]);return r}function d(t,e){var n,a=[];e===N?(e=0,n=t):(n=e,e=t);for(var r=e;r<n;r++)a.push(r);return a}function m(t){for(var e=[],n=0,a=t.length;n<a;n++)t[n]&&e.push(t[n]);return e}var p,e,t,w=function(t,y){if(this instanceof w)return P(t).DataTable(y);y=t,this.$=function(t,e){return this.api(!0).$(t,e)},this._=function(t,e){return this.api(!0).rows(t,e).data()},this.api=function(t){return new ve(t?le(this[p.iApiIndex]):this)},this.fnAddData=function(t,e){var n=this.api(!0),t=(Array.isArray(t)&&(Array.isArray(t[0])||P.isPlainObject(t[0]))?n.rows:n.row).add(t);return e!==N&&!e||n.draw(),t.flatten().toArray()},this.fnAdjustColumnSizing=function(t){var e=this.api(!0).columns.adjust(),n=e.settings()[0],a=n.oScroll;t===N||t?e.draw(!1):""===a.sX&&""===a.sY||Ut(n)},this.fnClearTable=function(t){var e=this.api(!0).clear();t!==N&&!t||e.draw()},this.fnClose=function(t){this.api(!0).row(t).child.hide()},this.fnDeleteRow=function(t,e,n){var a=this.api(!0),r=a.rows(t),o=r.settings()[0],t=o.aoData[r[0][0]];return r.remove(),e&&e.call(this,o,t),n!==N&&!n||a.draw(),t},this.fnDestroy=function(t){this.api(!0).destroy(t)},this.fnDraw=function(t){this.api(!0).draw(t)},this.fnFilter=function(t,e,n,a,r,o){var i=this.api(!0);(null===e||e===N?i:i.column(e)).search(t,n,a,o),i.draw()},this.fnGetData=function(t,e){var n=this.api(!0);if(t===N)return n.data().toArray();var a=t.nodeName?t.nodeName.toLowerCase():"";return e!==N||"td"==a||"th"==a?n.cell(t,e).data():n.row(t).data()||null},this.fnGetNodes=function(t){var e=this.api(!0);return t!==N?e.row(t).node():e.rows().nodes().flatten().toArray()},this.fnGetPosition=function(t){var e=this.api(!0),n=t.nodeName.toUpperCase();if("TR"==n)return e.row(t).index();if("TD"!=n&&"TH"!=n)return null;t=e.cell(t).index();return[t.row,t.columnVisible,t.column]},this.fnIsOpen=function(t){return this.api(!0).row(t).child.isShown()},this.fnOpen=function(t,e,n){return this.api(!0).row(t).child(e,n).show().child()[0]},this.fnPageChange=function(t,e){t=this.api(!0).page(t);e!==N&&!e||t.draw(!1)},this.fnSetColumnVis=function(t,e,n){e=this.api(!0).column(t).visible(e);n!==N&&!n||e.columns.adjust().draw()},this.fnSettings=function(){return le(this[p.iApiIndex])},this.fnSort=function(t){this.api(!0).order(t).draw()},this.fnSortListener=function(t,e,n){this.api(!0).order.listener(t,e,n)},this.fnUpdate=function(t,e,n,a,r){var o=this.api(!0);return(n===N||null===n?o.row(e):o.cell(e,n)).data(t),r!==N&&!r||o.columns.adjust(),a!==N&&!a||o.draw(),0},this.fnVersionCheck=p.fnVersionCheck;var e,D=this,_=y===N,C=this.length;for(e in _&&(y={}),this.oApi=this.internal=p.internal,w.ext.internal)e&&(this[e]=ke(e));return this.each(function(){var r=1<C?ce({},y,!0):y,o=0,t=this.getAttribute("id"),i=!1,e=w.defaults,l=P(this);if("table"==this.nodeName.toLowerCase()){A(e),I(e.column),T(e,e,!0),T(e.column,e.column,!0),T(e,P.extend(r,l.data()),!0);for(var n=w.settings,o=0,s=n.length;o<s;o++){var a=n[o];if(a.nTable==this||a.nTHead&&a.nTHead.parentNode==this||a.nTFoot&&a.nTFoot.parentNode==this){var u=(r.bRetrieve!==N?r:e).bRetrieve,c=(r.bDestroy!==N?r:e).bDestroy;if(_||u)return a.oInstance;if(c){a.oInstance.fnDestroy();break}return void se(a,0,"Cannot reinitialise DataTable",3)}if(a.sTableId==this.id){n.splice(o,1);break}}null!==t&&""!==t||(t="DataTables_Table_"+w.ext._unique++,this.id=t);var f=P.extend(!0,{},w.models.oSettings,{sDestroyWidth:l[0].style.width,sInstance:t,sTableId:t});f.nTable=this,f.oApi=D.internal,f.oInit=r,n.push(f),f.oInstance=1===D.length?D:l.dataTable(),A(r),x(r.oLanguage),r.aLengthMenu&&!r.iDisplayLength&&(r.iDisplayLength=(Array.isArray(r.aLengthMenu[0])?r.aLengthMenu[0]:r.aLengthMenu)[0]),r=ce(P.extend(!0,{},e),r),ue(f.oFeatures,r,["bPaginate","bLengthChange","bFilter","bSort","bSortMulti","bInfo","bProcessing","bAutoWidth","bSortClasses","bServerSide","bDeferRender"]),ue(f,r,["asStripeClasses","ajax","fnServerData","fnFormatNumber","sServerMethod","aaSorting","aaSortingFixed","aLengthMenu","sPaginationType","sAjaxSource","sAjaxDataProp","iStateDuration","sDom","bSortCellsTop","iTabIndex","fnStateLoadCallback","fnStateSaveCallback","renderer","searchDelay","rowId",["iCookieDuration","iStateDuration"],["oSearch","oPreviousSearch"],["aoSearchCols","aoPreSearchCols"],["iDisplayLength","_iDisplayLength"]]),ue(f.oScroll,r,[["sScrollX","sX"],["sScrollXInner","sXInner"],["sScrollY","sY"],["bScrollCollapse","bCollapse"]]),ue(f.oLanguage,r,"fnInfoCallback"),de(f,"aoDrawCallback",r.fnDrawCallback,"user"),de(f,"aoServerParams",r.fnServerParams,"user"),de(f,"aoStateSaveParams",r.fnStateSaveParams,"user"),de(f,"aoStateLoadParams",r.fnStateLoadParams,"user"),de(f,"aoStateLoaded",r.fnStateLoaded,"user"),de(f,"aoRowCallback",r.fnRowCallback,"user"),de(f,"aoRowCreatedCallback",r.fnCreatedRow,"user"),de(f,"aoHeaderCallback",r.fnHeaderCallback,"user"),de(f,"aoFooterCallback",r.fnFooterCallback,"user"),de(f,"aoInitComplete",r.fnInitComplete,"user"),de(f,"aoPreDrawCallback",r.fnPreDrawCallback,"user"),f.rowIdFn=Z(r.rowId),F(f);var d=f.oClasses;P.extend(d,w.ext.classes,r.oClasses),l.addClass(d.sTable),f.iInitDisplayStart===N&&(f.iInitDisplayStart=r.iDisplayStart,f._iDisplayStart=r.iDisplayStart),null!==r.iDeferLoading&&(f.bDeferLoading=!0,p=Array.isArray(r.iDeferLoading),f._iRecordsDisplay=p?r.iDeferLoading[0]:r.iDeferLoading,f._iRecordsTotal=p?r.iDeferLoading[1]:r.iDeferLoading);var h=f.oLanguage;P.extend(!0,h,r.oLanguage),h.sUrl?(P.ajax({dataType:"json",url:h.sUrl,success:function(t){T(e.oLanguage,t),x(t),P.extend(!0,h,t),he(f,null,"i18n",[f]),jt(f)},error:function(){jt(f)}}),i=!0):he(f,null,"i18n",[f]),null===r.asStripeClasses&&(f.asStripeClasses=[d.sStripeOdd,d.sStripeEven]);var p=f.asStripeClasses,g=l.children("tbody").find("tr").eq(0);-1!==P.inArray(!0,P.map(p,function(t,e){return g.hasClass(t)}))&&(P("tbody tr",this).removeClass(p.join(" ")),f.asDestroyStripes=p.slice());var b,S,m=[],p=this.getElementsByTagName("thead");if(0!==p.length&&(ft(f.aoHeader,p[0]),m=dt(f)),null===r.aoColumns)for(b=[],o=0,s=m.length;o<s;o++)b.push(null);else b=r.aoColumns;for(o=0,s=b.length;o<s;o++)R(f,m?m[o]:null);X(f,r.aoColumnDefs,b,function(t,e){O(f,t,e)}),g.length&&(S=function(t,e){return null!==t.getAttribute("data-"+e)?e:null},P(g[0]).children("th, td").each(function(t,e){var n,a=f.aoColumns[t];a.mData===t&&(n=S(e,"sort")||S(e,"order"),e=S(e,"filter")||S(e,"search"),null===n&&null===e||(a.mData={_:t+".display",sort:null!==n?t+".@data-"+n:N,type:null!==n?t+".@data-"+n:N,filter:null!==e?t+".@data-"+e:N},O(f,t)))}));var v=f.oFeatures,p=function(){if(r.aaSorting===N){var t=f.aaSorting;for(o=0,s=t.length;o<s;o++)t[o][1]=f.aoColumns[o].asSorting[0]}ne(f),v.bSort&&de(f,"aoDrawCallback",function(){var t,n;f.bSorted&&(t=Zt(f),n={},P.each(t,function(t,e){n[e.src]=e.dir}),he(f,null,"order",[f,t,n]),Qt(f))}),de(f,"aoDrawCallback",function(){(f.bSorted||"ssp"===be(f)||v.bDeferRender)&&ne(f)},"sc");var e=l.children("caption").each(function(){this._captionSide=P(this).css("caption-side")}),n=l.children("thead");0===n.length&&(n=P("<thead/>").appendTo(l)),f.nTHead=n[0];var a=l.children("tbody");0===a.length&&(a=P("<tbody/>").insertAfter(n)),f.nTBody=a[0];a=l.children("tfoot");if(0===a.length&&0<e.length&&(""!==f.oScroll.sX||""!==f.oScroll.sY)&&(a=P("<tfoot/>").appendTo(l)),0===a.length||0===a.children().length?l.addClass(d.sNoFooter):0<a.length&&(f.nTFoot=a[0],ft(f.aoFooter,f.nTFoot)),r.aaData)for(o=0;o<r.aaData.length;o++)V(f,r.aaData[o]);else!f.bDeferLoading&&"dom"!=be(f)||J(f,P(f.nTBody).children("tr"));f.aiDisplay=f.aiDisplayMaster.slice(),!(f.bInitialised=!0)===i&&jt(f)};de(f,"aoDrawCallback",re,"state_save"),r.bStateSave?(v.bStateSave=!0,oe(f,0,p)):p()}else se(null,0,"Non-table node initialisation ("+this.nodeName+")",2)}),D=null,this},a={},i=/[\r\n\u2028]/g,l=/<.*?>/g,s=/^\d{2,4}[\.\/\-]\d{1,2}[\.\/\-]\d{1,2}([T ]{1}\d{1,2}[:\.]\d{2}([\.:]\d{2})?)?$/,u=new RegExp("(\\"+["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^","-"].join("|\\")+")","g"),c=/['\u00A0,$£€¥%\u2009\u202F\u20BD\u20a9\u20BArfkɃΞ]/gi,h=function(t){return!t||!0===t||"-"===t},H=function(t,e,n){var a=[],r=0,o=t.length;if(n!==N)for(;r<o;r++)t[r]&&t[r][e]&&a.push(t[r][e][n]);else for(;r<o;r++)t[r]&&a.push(t[r][e]);return a},g=function(t){return t.replace(l,"")},b=function(t){if(function(t){if(t.length<2)return!0;for(var e=t.slice().sort(),n=e[0],a=1,r=e.length;a<r;a++){if(e[a]===n)return!1;n=e[a]}return!0}(t))return t.slice();var e,n,a,r=[],o=t.length,i=0;t:for(n=0;n<o;n++){for(e=t[n],a=0;a<i;a++)if(r[a]===e)continue t;r.push(e),i++}return r},v=function(t,e){if(Array.isArray(e))for(var n=0;n<e.length;n++)v(t,e[n]);else t.push(e);return t},D=function(t,e){return e===N&&(e=0),-1!==this.indexOf(t,e)};function _(n){var a,r,o={};P.each(n,function(t,e){(a=t.match(/^([^A-Z]+?)([A-Z])/))&&-1!=="a aa ai ao as b fn i m o s ".indexOf(a[1]+" ")&&(r=t.replace(a[0],a[2].toLowerCase()),o[r]=t,"o"===a[1]&&_(n[t]))}),n._hungarianMap=o}function T(n,a,r){var o;n._hungarianMap||_(n),P.each(a,function(t,e){(o=n._hungarianMap[t])===N||!r&&a[o]!==N||("o"===o.charAt(0)?(a[o]||(a[o]={}),P.extend(!0,a[o],a[t]),T(n[o],a[o],r)):a[o]=a[t])})}function x(t){var e,n=w.defaults.oLanguage,a=n.sDecimal;a&&He(a),t&&(e=t.sZeroRecords,!t.sEmptyTable&&e&&"No data available in table"===n.sEmptyTable&&ue(t,t,"sZeroRecords","sEmptyTable"),!t.sLoadingRecords&&e&&"Loading..."===n.sLoadingRecords&&ue(t,t,"sZeroRecords","sLoadingRecords"),t.sInfoThousands&&(t.sThousands=t.sInfoThousands),(t=t.sDecimal)&&a!==t&&He(t))}Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.includes||(Array.prototype.includes=D),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=D),w.util={throttle:function(a,t){var r,o,i=t!==N?t:200;return function(){var t=this,e=+new Date,n=arguments;r&&e<r+i?(clearTimeout(o),o=setTimeout(function(){r=N,a.apply(t,n)},i)):(r=e,a.apply(t,n))}},escapeRegex:function(t){return t.replace(u,"\\$1")},set:function(a){if(P.isPlainObject(a))return w.util.set(a._);if(null===a)return function(){};if("function"==typeof a)return function(t,e,n){a(t,"set",e,n)};if("string"!=typeof a||-1===a.indexOf(".")&&-1===a.indexOf("[")&&-1===a.indexOf("("))return function(t,e){t[a]=e};var d=function(t,e,n){for(var a,r,o,i,l=Y(n),n=l[l.length-1],s=0,u=l.length-1;s<u;s++){if("__proto__"===l[s]||"constructor"===l[s])throw new Error("Cannot set prototype values");if(a=l[s].match($),r=l[s].match(z),a){if(l[s]=l[s].replace($,""),t[l[s]]=[],(a=l.slice()).splice(0,s+1),i=a.join("."),Array.isArray(e))for(var c=0,f=e.length;c<f;c++)d(o={},e[c],i),t[l[s]].push(o);else t[l[s]]=e;return}r&&(l[s]=l[s].replace(z,""),t=t[l[s]](e)),null!==t[l[s]]&&t[l[s]]!==N||(t[l[s]]={}),t=t[l[s]]}n.match(z)?t=t[n.replace(z,"")](e):t[n.replace($,"")]=e};return function(t,e){return d(t,e,a)}},get:function(r){if(P.isPlainObject(r)){var o={};return P.each(r,function(t,e){e&&(o[t]=w.util.get(e))}),function(t,e,n,a){var r=o[e]||o._;return r!==N?r(t,e,n,a):t}}if(null===r)return function(t){return t};if("function"==typeof r)return function(t,e,n,a){return r(t,e,n,a)};if("string"!=typeof r||-1===r.indexOf(".")&&-1===r.indexOf("[")&&-1===r.indexOf("("))return function(t,e){return t[r]};var d=function(t,e,n){var a,r,o;if(""!==n)for(var i=Y(n),l=0,s=i.length;l<s;l++){if(f=i[l].match($),a=i[l].match(z),f){if(i[l]=i[l].replace($,""),""!==i[l]&&(t=t[i[l]]),r=[],i.splice(0,l+1),o=i.join("."),Array.isArray(t))for(var u=0,c=t.length;u<c;u++)r.push(d(t[u],e,o));var f=f[0].substring(1,f[0].length-1);t=""===f?r:r.join(f);break}if(a)i[l]=i[l].replace(z,""),t=t[i[l]]();else{if(null===t||t[i[l]]===N)return N;t=t[i[l]]}}return t};return function(t,e){return d(t,e,r)}}};var C=function(t,e,n){t[e]!==N&&(t[n]=t[e])};function A(t){C(t,"ordering","bSort"),C(t,"orderMulti","bSortMulti"),C(t,"orderClasses","bSortClasses"),C(t,"orderCellsTop","bSortCellsTop"),C(t,"order","aaSorting"),C(t,"orderFixed","aaSortingFixed"),C(t,"paging","bPaginate"),C(t,"pagingType","sPaginationType"),C(t,"pageLength","iDisplayLength"),C(t,"searching","bFilter"),"boolean"==typeof t.sScrollX&&(t.sScrollX=t.sScrollX?"100%":""),"boolean"==typeof t.scrollX&&(t.scrollX=t.scrollX?"100%":"");var e=t.aoSearchCols;if(e)for(var n=0,a=e.length;n<a;n++)e[n]&&T(w.models.oSearch,e[n])}function I(t){C(t,"orderable","bSortable"),C(t,"orderData","aDataSort"),C(t,"orderSequence","asSorting"),C(t,"orderDataType","sortDataType");var e=t.aDataSort;"number"!=typeof e||Array.isArray(e)||(t.aDataSort=[e])}function F(t){var e,n,a,r;w.__browser||(e={},w.__browser=e,r=(a=(n=P("<div/>").css({position:"fixed",top:0,left:-1*P(j).scrollLeft(),height:1,width:1,overflow:"hidden"}).append(P("<div/>").css({position:"absolute",top:1,left:1,width:100,overflow:"scroll"}).append(P("<div/>").css({width:"100%",height:10}))).appendTo("body")).children()).children(),e.barWidth=a[0].offsetWidth-a[0].clientWidth,e.bScrollOversize=100===r[0].offsetWidth&&100!==a[0].clientWidth,e.bScrollbarLeft=1!==Math.round(r.offset().left),e.bBounding=!!n[0].getBoundingClientRect().width,n.remove()),P.extend(t.oBrowser,w.__browser),t.oScroll.iBarWidth=w.__browser.barWidth}function L(t,e,n,a,r,o){var i,l=a,s=!1;for(n!==N&&(i=n,s=!0);l!==r;)t.hasOwnProperty(l)&&(i=s?e(i,t[l],l,t):t[l],s=!0,l+=o);return i}function R(t,e){var n=w.defaults.column,a=t.aoColumns.length,n=P.extend({},w.models.oColumn,n,{nTh:e||y.createElement("th"),sTitle:n.sTitle||(e?e.innerHTML:""),aDataSort:n.aDataSort||[a],mData:n.mData||a,idx:a});t.aoColumns.push(n);n=t.aoPreSearchCols;n[a]=P.extend({},w.models.oSearch,n[a]),O(t,a,P(e).data())}function O(t,e,n){var a=t.aoColumns[e],r=t.oClasses,o=P(a.nTh);a.sWidthOrig||(a.sWidthOrig=o.attr("width")||null,(e=(o.attr("style")||"").match(/width:\s*(\d+[pxem%]+)/))&&(a.sWidthOrig=e[1])),n!==N&&null!==n&&(I(n),T(w.defaults.column,n,!0),n.mDataProp===N||n.mData||(n.mData=n.mDataProp),n.sType&&(a._sManualType=n.sType),n.className&&!n.sClass&&(n.sClass=n.className),n.sClass&&o.addClass(n.sClass),P.extend(a,n),ue(a,n,"sWidth","sWidthOrig"),n.iDataSort!==N&&(a.aDataSort=[n.iDataSort]),ue(a,n,"aDataSort"));var i=a.mData,l=Z(i),s=a.mRender?Z(a.mRender):null,n=function(t){return"string"==typeof t&&-1!==t.indexOf("@")};a._bAttrSrc=P.isPlainObject(i)&&(n(i.sort)||n(i.type)||n(i.filter)),a._setter=null,a.fnGetData=function(t,e,n){var a=l(t,e,N,n);return s&&e?s(a,e,t,n):a},a.fnSetData=function(t,e,n){return K(i)(t,e,n)},"number"!=typeof i&&(t._rowReadObject=!0),t.oFeatures.bSort||(a.bSortable=!1,o.addClass(r.sSortableNone));t=-1!==P.inArray("asc",a.asSorting),o=-1!==P.inArray("desc",a.asSorting);a.bSortable&&(t||o)?t&&!o?(a.sSortingClass=r.sSortableAsc,a.sSortingClassJUI=r.sSortJUIAscAllowed):!t&&o?(a.sSortingClass=r.sSortableDesc,a.sSortingClassJUI=r.sSortJUIDescAllowed):(a.sSortingClass=r.sSortable,a.sSortingClassJUI=r.sSortJUI):(a.sSortingClass=r.sSortableNone,a.sSortingClassJUI="")}function k(t){if(!1!==t.oFeatures.bAutoWidth){var e=t.aoColumns;Jt(t);for(var n=0,a=e.length;n<a;n++)e[n].nTh.style.width=e[n].sWidth}var r=t.oScroll;""===r.sY&&""===r.sX||Ut(t),he(t,null,"column-sizing",[t])}function M(t,e){t=B(t,"bVisible");return"number"==typeof t[e]?t[e]:null}function W(t,e){t=B(t,"bVisible"),t=P.inArray(e,t);return-1!==t?t:null}function E(t){var n=0;return P.each(t.aoColumns,function(t,e){e.bVisible&&"none"!==P(e.nTh).css("display")&&n++}),n}function B(t,n){var a=[];return P.map(t.aoColumns,function(t,e){t[n]&&a.push(e)}),a}function U(t){for(var e,n,a,r,o,i,l,s=t.aoColumns,u=t.aoData,c=w.ext.type.detect,f=0,d=s.length;f<d;f++)if(l=[],!(o=s[f]).sType&&o._sManualType)o.sType=o._sManualType;else if(!o.sType){for(e=0,n=c.length;e<n;e++){for(a=0,r=u.length;a<r&&(l[a]===N&&(l[a]=q(t,a,f,"type")),(i=c[e](l[a],t))||e===c.length-1)&&("html"!==i||h(l[a]));a++);if(i){o.sType=i;break}}o.sType||(o.sType="string")}}function X(t,e,n,a){var r,o,i,l,s,u,c,f=t.aoColumns;if(e)for(r=e.length-1;0<=r;r--){var d=(c=e[r]).targets!==N?c.targets:c.aTargets;for(Array.isArray(d)||(d=[d]),i=0,l=d.length;i<l;i++)if("number"==typeof d[i]&&0<=d[i]){for(;f.length<=d[i];)R(t);a(d[i],c)}else if("number"==typeof d[i]&&d[i]<0)a(f.length+d[i],c);else if("string"==typeof d[i])for(s=0,u=f.length;s<u;s++)"_all"!=d[i]&&!P(f[s].nTh).hasClass(d[i])||a(s,c)}if(n)for(r=0,o=n.length;r<o;r++)a(r,n[r])}function V(t,e,n,a){var r=t.aoData.length,o=P.extend(!0,{},w.models.oRow,{src:n?"dom":"data",idx:r});o._aData=e,t.aoData.push(o);for(var i=t.aoColumns,l=0,s=i.length;l<s;l++)i[l].sType=null;t.aiDisplayMaster.push(r);e=t.rowIdFn(e);return e!==N&&(t.aIds[e]=o),!n&&t.oFeatures.bDeferRender||rt(t,r,n,a),r}function J(n,t){var a;return t instanceof P||(t=P(t)),t.map(function(t,e){return a=at(n,e),V(n,a.data,e,a.cells)})}function q(t,e,n,a){"search"===a?a="filter":"order"===a&&(a="sort");var r=t.iDraw,o=t.aoColumns[n],i=t.aoData[e]._aData,l=o.sDefaultContent,s=o.fnGetData(i,a,{settings:t,row:e,col:n});if(s===N)return t.iDrawError!=r&&null===l&&(se(t,0,"Requested unknown parameter "+("function"==typeof o.mData?"{function}":"'"+o.mData+"'")+" for row "+e+", column "+n,4),t.iDrawError=r),l;if(s!==i&&null!==s||null===l||a===N){if("function"==typeof s)return s.call(i)}else s=l;return null===s&&"display"===a?"":("filter"!==a||(a=w.ext.type.search)[o.sType]&&(s=a[o.sType](s)),s)}function G(t,e,n,a){var r=t.aoColumns[n],o=t.aoData[e]._aData;r.fnSetData(o,a,{settings:t,row:e,col:n})}var $=/\[.*?\]$/,z=/\(\)$/;function Y(t){return P.map(t.match(/(\\.|[^\.])+/g)||[""],function(t){return t.replace(/\\\./g,".")})}var Z=w.util.get,K=w.util.set;function Q(t){return H(t.aoData,"_aData")}function tt(t){t.aoData.length=0,t.aiDisplayMaster.length=0,t.aiDisplay.length=0,t.aIds={}}function et(t,e,n){for(var a=-1,r=0,o=t.length;r<o;r++)t[r]==e?a=r:t[r]>e&&t[r]--;-1!=a&&n===N&&t.splice(a,1)}function nt(n,a,t,e){function r(t,e){for(;t.childNodes.length;)t.removeChild(t.firstChild);t.innerHTML=q(n,a,e,"display")}var o,i,l=n.aoData[a];if("dom"!==t&&(t&&"auto"!==t||"dom"!==l.src)){var s=l.anCells;if(s)if(e!==N)r(s[e],e);else for(o=0,i=s.length;o<i;o++)r(s[o],o)}else l._aData=at(n,l,e,e===N?N:l._aData).data;l._aSortData=null,l._aFilterData=null;var u=n.aoColumns;if(e!==N)u[e].sType=null;else{for(o=0,i=u.length;o<i;o++)u[o].sType=null;ot(n,l)}}function at(t,e,n,a){var r,o,i,l=[],s=e.firstChild,u=0,c=t.aoColumns,f=t._rowReadObject;a=a!==N?a:f?{}:[];function d(t,e){var n;"string"!=typeof t||-1!==(n=t.indexOf("@"))&&(n=t.substring(n+1),K(t)(a,e.getAttribute(n)))}function h(t){n!==N&&n!==u||(o=c[u],i=t.innerHTML.trim(),o&&o._bAttrSrc?(K(o.mData._)(a,i),d(o.mData.sort,t),d(o.mData.type,t),d(o.mData.filter,t)):f?(o._setter||(o._setter=K(o.mData)),o._setter(a,i)):a[u]=i),u++}if(s)for(;s;)"TD"!=(r=s.nodeName.toUpperCase())&&"TH"!=r||(h(s),l.push(s)),s=s.nextSibling;else for(var p=0,g=(l=e.anCells).length;p<g;p++)h(l[p]);e=e.firstChild?e:e.nTr;return!e||(e=e.getAttribute("id"))&&K(t.rowId)(a,e),{data:a,cells:l}}function rt(t,e,n,a){var r,o,i,l,s,u,c=t.aoData[e],f=c._aData,d=[];if(null===c.nTr){for(r=n||y.createElement("tr"),c.nTr=r,c.anCells=d,r._DT_RowIndex=e,ot(t,c),l=0,s=t.aoColumns.length;l<s;l++)i=t.aoColumns[l],(o=(u=!n)?y.createElement(i.sCellType):a[l])._DT_CellIndex={row:e,column:l},d.push(o),!u&&(!i.mRender&&i.mData===l||P.isPlainObject(i.mData)&&i.mData._===l+".display")||(o.innerHTML=q(t,e,l,"display")),i.sClass&&(o.className+=" "+i.sClass),i.bVisible&&!n?r.appendChild(o):!i.bVisible&&n&&o.parentNode.removeChild(o),i.fnCreatedCell&&i.fnCreatedCell.call(t.oInstance,o,q(t,e,l),f,e,l);he(t,"aoRowCreatedCallback",null,[r,f,e,d])}}function ot(t,e){var n=e.nTr,a=e._aData;n&&((t=t.rowIdFn(a))&&(n.id=t),a.DT_RowClass&&(t=a.DT_RowClass.split(" "),e.__rowc=e.__rowc?b(e.__rowc.concat(t)):t,P(n).removeClass(e.__rowc.join(" ")).addClass(a.DT_RowClass)),a.DT_RowAttr&&P(n).attr(a.DT_RowAttr),a.DT_RowData&&P(n).data(a.DT_RowData))}function it(t){var e,n,a,r=t.nTHead,o=t.nTFoot,i=0===P("th, td",r).length,l=t.oClasses,s=t.aoColumns;for(i&&(n=P("<tr/>").appendTo(r)),c=0,f=s.length;c<f;c++)a=s[c],e=P(a.nTh).addClass(a.sClass),i&&e.appendTo(n),t.oFeatures.bSort&&(e.addClass(a.sSortingClass),!1!==a.bSortable&&(e.attr("tabindex",t.iTabIndex).attr("aria-controls",t.sTableId),ee(t,a.nTh,c))),a.sTitle!=e[0].innerHTML&&e.html(a.sTitle),ge(t,"header")(t,e,a,l);if(i&&ft(t.aoHeader,r),P(r).children("tr").children("th, td").addClass(l.sHeaderTH),P(o).children("tr").children("th, td").addClass(l.sFooterTH),null!==o)for(var u=t.aoFooter[0],c=0,f=u.length;c<f;c++)(a=s[c]).nTf=u[c].cell,a.sClass&&P(a.nTf).addClass(a.sClass)}function lt(t,e,n){var a,r,o,i,l,s,u,c,f,d=[],h=[],p=t.aoColumns.length;if(e){for(n===N&&(n=!1),a=0,r=e.length;a<r;a++){for(d[a]=e[a].slice(),d[a].nTr=e[a].nTr,o=p-1;0<=o;o--)t.aoColumns[o].bVisible||n||d[a].splice(o,1);h.push([])}for(a=0,r=d.length;a<r;a++){if(u=d[a].nTr)for(;s=u.firstChild;)u.removeChild(s);for(o=0,i=d[a].length;o<i;o++)if(f=c=1,h[a][o]===N){for(u.appendChild(d[a][o].cell),h[a][o]=1;d[a+c]!==N&&d[a][o].cell==d[a+c][o].cell;)h[a+c][o]=1,c++;for(;d[a][o+f]!==N&&d[a][o].cell==d[a][o+f].cell;){for(l=0;l<c;l++)h[a+l][o+f]=1;f++}P(d[a][o].cell).attr("rowspan",c).attr("colspan",f)}}}}function st(t,e){l="ssp"==be(c=t),(s=c.iInitDisplayStart)!==N&&-1!==s&&(c._iDisplayStart=!l&&s>=c.fnRecordsDisplay()?0:s,c.iInitDisplayStart=-1);var n=he(t,"aoPreDrawCallback","preDraw",[t]);if(-1===P.inArray(!1,n)){var a=[],r=0,o=t.asStripeClasses,i=o.length,l=t.oLanguage,s="ssp"==be(t),u=t.aiDisplay,c=t._iDisplayStart,n=t.fnDisplayEnd();if(t.bDrawing=!0,t.bDeferLoading)t.bDeferLoading=!1,t.iDraw++,Et(t,!1);else if(s){if(!t.bDestroying&&!e)return void pt(t)}else t.iDraw++;if(0!==u.length)for(var f=s?0:c,d=s?t.aoData.length:n,h=f;h<d;h++){var p=u[h],g=t.aoData[p];null===g.nTr&&rt(t,p);var b,S=g.nTr;0!==i&&(b=o[r%i],g._sRowStripe!=b&&(P(S).removeClass(g._sRowStripe).addClass(b),g._sRowStripe=b)),he(t,"aoRowCallback",null,[S,g._aData,r,h,p]),a.push(S),r++}else{f=l.sZeroRecords;1==t.iDraw&&"ajax"==be(t)?f=l.sLoadingRecords:l.sEmptyTable&&0===t.fnRecordsTotal()&&(f=l.sEmptyTable),a[0]=P("<tr/>",{class:i?o[0]:""}).append(P("<td />",{valign:"top",colSpan:E(t),class:t.oClasses.sRowEmpty}).html(f))[0]}he(t,"aoHeaderCallback","header",[P(t.nTHead).children("tr")[0],Q(t),c,n,u]),he(t,"aoFooterCallback","footer",[P(t.nTFoot).children("tr")[0],Q(t),c,n,u]);n=P(t.nTBody);n.children().detach(),n.append(P(a)),he(t,"aoDrawCallback","draw",[t]),t.bSorted=!1,t.bFiltered=!1,t.bDrawing=!1}else Et(t,!1)}function ut(t,e){var n=t.oFeatures,a=n.bSort,n=n.bFilter;a&&Kt(t),n?vt(t,t.oPreviousSearch):t.aiDisplay=t.aiDisplayMaster.slice(),!0!==e&&(t._iDisplayStart=0),t._drawHold=e,st(t),t._drawHold=!1}function ct(t){var e=t.oClasses,n=P(t.nTable),n=P("<div/>").insertBefore(n),a=t.oFeatures,r=P("<div/>",{id:t.sTableId+"_wrapper",class:e.sWrapper+(t.nTFoot?"":" "+e.sNoFooter)});t.nHolding=n[0],t.nTableWrapper=r[0],t.nTableReinsertBefore=t.nTable.nextSibling;for(var o,i,l,s,u,c,f,d=t.sDom.split(""),h=0;h<d.length;h++){if(o=null,"<"==(i=d[h])){if(f=P("<div/>")[0],"'"==(l=d[h+1])||'"'==l){for(s="",u=2;d[h+u]!=l;)s+=d[h+u],u++;"H"==s?s=e.sJUIHeader:"F"==s&&(s=e.sJUIFooter),-1!=s.indexOf(".")?(c=s.split("."),f.id=c[0].substr(1,c[0].length-1),f.className=c[1]):"#"==s.charAt(0)?f.id=s.substr(1,s.length-1):f.className=s,h+=u}r.append(f),r=P(f)}else if(">"==i)r=r.parent();else if("l"==i&&a.bPaginate&&a.bLengthChange)o=Ot(t);else if("f"==i&&a.bFilter)o=mt(t);else if("r"==i&&a.bProcessing)o=Wt(t);else if("t"==i)o=Bt(t);else if("i"==i&&a.bInfo)o=Lt(t);else if("p"==i&&a.bPaginate)o=kt(t);else if(0!==w.ext.feature.length)for(var p=w.ext.feature,g=0,b=p.length;g<b;g++)if(i==p[g].cFeature){o=p[g].fnInit(t);break}o&&((f=t.aanFeatures)[i]||(f[i]=[]),f[i].push(o),r.append(o))}n.replaceWith(r),t.nHolding=null}function ft(t,e){var n,a,r,o,i,l,s,u,c,f,d=P(e).children("tr");for(t.splice(0,t.length),r=0,l=d.length;r<l;r++)t.push([]);for(r=0,l=d.length;r<l;r++)for(a=(n=d[r]).firstChild;a;){if("TD"==a.nodeName.toUpperCase()||"TH"==a.nodeName.toUpperCase())for(u=(u=+a.getAttribute("colspan"))&&0!==u&&1!==u?u:1,c=(c=+a.getAttribute("rowspan"))&&0!==c&&1!==c?c:1,s=function(t,e,n){for(var a=t[e];a[n];)n++;return n}(t,r,0),f=1===u,i=0;i<u;i++)for(o=0;o<c;o++)t[r+o][s+i]={cell:a,unique:f},t[r+o].nTr=n;a=a.nextSibling}}function dt(t,e,n){var a=[];n||(n=t.aoHeader,e&&ft(n=[],e));for(var r=0,o=n.length;r<o;r++)for(var i=0,l=n[r].length;i<l;i++)!n[r][i].unique||a[i]&&t.bSortCellsTop||(a[i]=n[r][i].cell);return a}function ht(r,t,n){var a,o,e;he(r,"aoServerParams","serverParams",[t]),t&&Array.isArray(t)&&(a={},o=/(.*?)\[\]$/,P.each(t,function(t,e){var n=e.name.match(o);n?(n=n[0],a[n]||(a[n]=[]),a[n].push(e.value)):a[e.name]=e.value}),t=a);function i(t){var e=r.jqXHR?r.jqXHR.status:null;(null===t||"number"==typeof e&&204==e)&&St(r,t={},[]),(e=t.error||t.sError)&&se(r,0,e),r.json=t,he(r,null,"xhr",[r,t,r.jqXHR]),n(t)}var l=r.ajax,s=r.oInstance;P.isPlainObject(l)&&l.data&&(u="function"==typeof(e=l.data)?e(t,r):e,t="function"==typeof e&&u?u:P.extend(!0,t,u),delete l.data);var u={data:t,success:i,dataType:"json",cache:!1,type:r.sServerMethod,error:function(t,e,n){var a=he(r,null,"xhr",[r,null,r.jqXHR]);-1===P.inArray(!0,a)&&("parsererror"==e?se(r,0,"Invalid JSON response",1):4===t.readyState&&se(r,0,"Ajax error",7)),Et(r,!1)}};r.oAjaxData=t,he(r,null,"preXhr",[r,t]),r.fnServerData?r.fnServerData.call(s,r.sAjaxSource,P.map(t,function(t,e){return{name:e,value:t}}),i,r):r.sAjaxSource||"string"==typeof l?r.jqXHR=P.ajax(P.extend(u,{url:l||r.sAjaxSource})):"function"==typeof l?r.jqXHR=l.call(s,t,i,r):(r.jqXHR=P.ajax(P.extend(u,l)),l.data=e)}function pt(e){e.iDraw++,Et(e,!0),ht(e,gt(e),function(t){bt(e,t)})}function gt(t){function n(t,e){c.push({name:t,value:e})}var e,a,r,o=t.aoColumns,i=o.length,l=t.oFeatures,s=t.oPreviousSearch,u=t.aoPreSearchCols,c=[],f=Zt(t),d=t._iDisplayStart,h=!1!==l.bPaginate?t._iDisplayLength:-1;n("sEcho",t.iDraw),n("iColumns",i),n("sColumns",H(o,"sName").join(",")),n("iDisplayStart",d),n("iDisplayLength",h);for(var p={draw:t.iDraw,columns:[],order:[],start:d,length:h,search:{value:s.sSearch,regex:s.bRegex}},g=0;g<i;g++)a=o[g],r=u[g],e="function"==typeof a.mData?"function":a.mData,p.columns.push({data:e,name:a.sName,searchable:a.bSearchable,orderable:a.bSortable,search:{value:r.sSearch,regex:r.bRegex}}),n("mDataProp_"+g,e),l.bFilter&&(n("sSearch_"+g,r.sSearch),n("bRegex_"+g,r.bRegex),n("bSearchable_"+g,a.bSearchable)),l.bSort&&n("bSortable_"+g,a.bSortable);l.bFilter&&(n("sSearch",s.sSearch),n("bRegex",s.bRegex)),l.bSort&&(P.each(f,function(t,e){p.order.push({column:e.col,dir:e.dir}),n("iSortCol_"+t,e.col),n("sSortDir_"+t,e.dir)}),n("iSortingCols",f.length));f=w.ext.legacy.ajax;return null===f?t.sAjaxSource?c:p:f?c:p}function bt(t,n){var e=function(t,e){return n[t]!==N?n[t]:n[e]},a=St(t,n),r=e("sEcho","draw"),o=e("iTotalRecords","recordsTotal"),e=e("iTotalDisplayRecords","recordsFiltered");if(r!==N){if(+r<t.iDraw)return;t.iDraw=+r}a=a||[],tt(t),t._iRecordsTotal=parseInt(o,10),t._iRecordsDisplay=parseInt(e,10);for(var i=0,l=a.length;i<l;i++)V(t,a[i]);t.aiDisplay=t.aiDisplayMaster.slice(),st(t,!0),t._bInitComplete||Nt(t,n),Et(t,!1)}function St(t,e,n){t=P.isPlainObject(t.ajax)&&t.ajax.dataSrc!==N?t.ajax.dataSrc:t.sAjaxDataProp;if(!n)return"data"===t?e.aaData||e[t]:""!==t?Z(t)(e):e;K(t)(e,n)}function mt(n){function e(t){i.f;var e=this.value||"";o.return&&"Enter"!==t.key||e!=o.sSearch&&(vt(n,{sSearch:e,bRegex:o.bRegex,bSmart:o.bSmart,bCaseInsensitive:o.bCaseInsensitive,return:o.return}),n._iDisplayStart=0,st(n))}var t=n.oClasses,a=n.sTableId,r=n.oLanguage,o=n.oPreviousSearch,i=n.aanFeatures,l='<input type="search" class="'+t.sFilterInput+'"/>',s=(s=r.sSearch).match(/_INPUT_/)?s.replace("_INPUT_",l):s+l,t=P("<div/>",{id:i.f?null:a+"_filter",class:t.sFilter}).append(P("<label/>").append(s)),s=null!==n.searchDelay?n.searchDelay:"ssp"===be(n)?400:0,u=P("input",t).val(o.sSearch).attr("placeholder",r.sSearchPlaceholder).on("keyup.DT search.DT input.DT paste.DT cut.DT",s?qt(e,s):e).on("mouseup",function(t){setTimeout(function(){e.call(u[0],t)},10)}).on("keypress.DT",function(t){if(13==t.keyCode)return!1}).attr("aria-controls",a);return P(n.nTable).on("search.dt.DT",function(t,e){if(n===e)try{u[0]!==y.activeElement&&u.val(o.sSearch)}catch(t){}}),t[0]}function vt(t,e,n){function a(t){o.sSearch=t.sSearch,o.bRegex=t.bRegex,o.bSmart=t.bSmart,o.bCaseInsensitive=t.bCaseInsensitive,o.return=t.return}function r(t){return t.bEscapeRegex!==N?!t.bEscapeRegex:t.bRegex}var o=t.oPreviousSearch,i=t.aoPreSearchCols;if(U(t),"ssp"!=be(t)){_t(t,e.sSearch,n,r(e),e.bSmart,e.bCaseInsensitive,e.return),a(e);for(var l=0;l<i.length;l++)Dt(t,i[l].sSearch,l,r(i[l]),i[l].bSmart,i[l].bCaseInsensitive);yt(t)}else a(e);t.bFiltered=!0,he(t,null,"search",[t])}function yt(t){for(var e,n,a=w.ext.search,r=t.aiDisplay,o=0,i=a.length;o<i;o++){for(var l=[],s=0,u=r.length;s<u;s++)n=r[s],e=t.aoData[n],a[o](t,e._aFilterData,n,e._aData,s)&&l.push(n);r.length=0,P.merge(r,l)}}function Dt(t,e,n,a,r,o){if(""!==e){for(var i,l=[],s=t.aiDisplay,u=Ct(e,a,r,o),c=0;c<s.length;c++)i=t.aoData[s[c]]._aFilterData[n],u.test(i)&&l.push(s[c]);t.aiDisplay=l}}function _t(t,e,n,a,r,o){var i,l,s=Ct(e,a,r,o),u=t.oPreviousSearch.sSearch,r=t.aiDisplayMaster,c=[];if(0!==w.ext.search.length&&(n=!0),o=At(t),e.length<=0)t.aiDisplay=r.slice();else{for((o||n||a||u.length>e.length||0!==e.indexOf(u)||t.bSorted)&&(t.aiDisplay=r.slice()),i=t.aiDisplay,l=0;l<i.length;l++)s.test(t.aoData[i[l]]._sFilterRow)&&c.push(i[l]);t.aiDisplay=c}}function Ct(t,e,n,a){return t=e?t:wt(t),n&&(t="^(?=.*?"+P.map(t.match(/"[^"]+"|[^ ]+/g)||[""],function(t){var e;return'"'===t.charAt(0)&&(t=(e=t.match(/^"(.*)"$/))?e[1]:t),t.replace('"',"")}).join(")(?=.*?")+").*$"),new RegExp(t,a?"i":"")}var wt=w.util.escapeRegex,Tt=P("<div>")[0],xt=Tt.textContent!==N;function At(t){for(var e,n,a,r,o,i=t.aoColumns,l=!1,s=0,u=t.aoData.length;s<u;s++)if(!(o=t.aoData[s])._aFilterData){for(a=[],e=0,n=i.length;e<n;e++)i[e].bSearchable?(null===(r=q(t,s,e,"filter"))&&(r=""),"string"!=typeof r&&r.toString&&(r=r.toString())):r="",r.indexOf&&-1!==r.indexOf("&")&&(Tt.innerHTML=r,r=xt?Tt.textContent:Tt.innerText),r.replace&&(r=r.replace(/[\r\n\u2028]/g,"")),a.push(r);o._aFilterData=a,o._sFilterRow=a.join(" "),l=!0}return l}function It(t){return{search:t.sSearch,smart:t.bSmart,regex:t.bRegex,caseInsensitive:t.bCaseInsensitive}}function Ft(t){return{sSearch:t.search,bSmart:t.smart,bRegex:t.regex,bCaseInsensitive:t.caseInsensitive}}function Lt(t){var e=t.sTableId,n=t.aanFeatures.i,a=P("<div/>",{class:t.oClasses.sInfo,id:n?null:e+"_info"});return n||(t.aoDrawCallback.push({fn:Rt,sName:"information"}),a.attr("role","status").attr("aria-live","polite"),P(t.nTable).attr("aria-describedby",e+"_info")),a[0]}function Rt(t){var e,n,a,r,o,i,l=t.aanFeatures.i;0!==l.length&&(i=t.oLanguage,e=t._iDisplayStart+1,n=t.fnDisplayEnd(),a=t.fnRecordsTotal(),o=(r=t.fnRecordsDisplay())?i.sInfo:i.sInfoEmpty,r!==a&&(o+=" "+i.sInfoFiltered),o=Pt(t,o+=i.sInfoPostFix),null!==(i=i.fnInfoCallback)&&(o=i.call(t.oInstance,t,e,n,a,r,o)),P(l).html(o))}function Pt(t,e){var n=t.fnFormatNumber,a=t._iDisplayStart+1,r=t._iDisplayLength,o=t.fnRecordsDisplay(),i=-1===r;return e.replace(/_START_/g,n.call(t,a)).replace(/_END_/g,n.call(t,t.fnDisplayEnd())).replace(/_MAX_/g,n.call(t,t.fnRecordsTotal())).replace(/_TOTAL_/g,n.call(t,o)).replace(/_PAGE_/g,n.call(t,i?1:Math.ceil(a/r))).replace(/_PAGES_/g,n.call(t,i?1:Math.ceil(o/r)))}function jt(n){var a,t,e,r=n.iInitDisplayStart,o=n.aoColumns,i=n.oFeatures,l=n.bDeferLoading;if(n.bInitialised){for(ct(n),it(n),lt(n,n.aoHeader),lt(n,n.aoFooter),Et(n,!0),i.bAutoWidth&&Jt(n),a=0,t=o.length;a<t;a++)(e=o[a]).sWidth&&(e.nTh.style.width=Yt(e.sWidth));he(n,null,"preInit",[n]),ut(n);i=be(n);"ssp"==i&&!l||("ajax"==i?ht(n,[],function(t){var e=St(n,t);for(a=0;a<e.length;a++)V(n,e[a]);n.iInitDisplayStart=r,ut(n),Et(n,!1),Nt(n,t)}):(Et(n,!1),Nt(n)))}else setTimeout(function(){jt(n)},200)}function Nt(t,e){t._bInitComplete=!0,(e||t.oInit.aaData)&&k(t),he(t,null,"plugin-init",[t,e]),he(t,"aoInitComplete","init",[t,e])}function Ht(t,e){e=parseInt(e,10);t._iDisplayLength=e,pe(t),he(t,null,"length",[t,e])}function Ot(a){for(var t=a.oClasses,e=a.sTableId,n=a.aLengthMenu,r=Array.isArray(n[0]),o=r?n[0]:n,i=r?n[1]:n,l=P("<select/>",{name:e+"_length","aria-controls":e,class:t.sLengthSelect}),s=0,u=o.length;s<u;s++)l[0][s]=new Option("number"==typeof i[s]?a.fnFormatNumber(i[s]):i[s],o[s]);var c=P("<div><label/></div>").addClass(t.sLength);return a.aanFeatures.l||(c[0].id=e+"_length"),c.children().append(a.oLanguage.sLengthMenu.replace("_MENU_",l[0].outerHTML)),P("select",c).val(a._iDisplayLength).on("change.DT",function(t){Ht(a,P(this).val()),st(a)}),P(a.nTable).on("length.dt.DT",function(t,e,n){a===e&&P("select",c).val(n)}),c[0]}function kt(t){function c(t){st(t)}var e=t.sPaginationType,f=w.ext.pager[e],d="function"==typeof f,e=P("<div/>").addClass(t.oClasses.sPaging+e)[0],h=t.aanFeatures;return d||f.fnInit(t,e,c),h.p||(e.id=t.sTableId+"_paginate",t.aoDrawCallback.push({fn:function(t){if(d)for(var e=t._iDisplayStart,n=t._iDisplayLength,a=t.fnRecordsDisplay(),r=-1===n,o=r?0:Math.ceil(e/n),i=r?1:Math.ceil(a/n),l=f(o,i),s=0,u=h.p.length;s<u;s++)ge(t,"pageButton")(t,h.p[s],s,l,o,i);else f.fnUpdate(t,c)},sName:"pagination"})),e}function Mt(t,e,n){var a=t._iDisplayStart,r=t._iDisplayLength,o=t.fnRecordsDisplay();0===o||-1===r?a=0:"number"==typeof e?o<(a=e*r)&&(a=0):"first"==e?a=0:"previous"==e?(a=0<=r?a-r:0)<0&&(a=0):"next"==e?a+r<o&&(a+=r):"last"==e?a=Math.floor((o-1)/r)*r:se(t,0,"Unknown paging action: "+e,5);e=t._iDisplayStart!==a;return t._iDisplayStart=a,e&&(he(t,null,"page",[t]),n&&st(t)),e}function Wt(t){return P("<div/>",{id:t.aanFeatures.r?null:t.sTableId+"_processing",class:t.oClasses.sProcessing}).html(t.oLanguage.sProcessing).insertBefore(t.nTable)[0]}function Et(t,e){t.oFeatures.bProcessing&&P(t.aanFeatures.r).css("display",e?"block":"none"),he(t,null,"processing",[t,e])}function Bt(t){var e=P(t.nTable),n=t.oScroll;if(""===n.sX&&""===n.sY)return t.nTable;function a(t){return t?Yt(t):null}var r=n.sX,o=n.sY,i=t.oClasses,l=e.children("caption"),s=l.length?l[0]._captionSide:null,u=P(e[0].cloneNode(!1)),c=P(e[0].cloneNode(!1)),f=e.children("tfoot"),d="<div/>";f.length||(f=null);u=P(d,{class:i.sScrollWrapper}).append(P(d,{class:i.sScrollHead}).css({overflow:"hidden",position:"relative",border:0,width:r?a(r):"100%"}).append(P(d,{class:i.sScrollHeadInner}).css({"box-sizing":"content-box",width:n.sXInner||"100%"}).append(u.removeAttr("id").css("margin-left",0).append("top"===s?l:null).append(e.children("thead"))))).append(P(d,{class:i.sScrollBody}).css({position:"relative",overflow:"auto",width:a(r)}).append(e));f&&u.append(P(d,{class:i.sScrollFoot}).css({overflow:"hidden",border:0,width:r?a(r):"100%"}).append(P(d,{class:i.sScrollFootInner}).append(c.removeAttr("id").css("margin-left",0).append("bottom"===s?l:null).append(e.children("tfoot")))));var l=u.children(),h=l[0],e=l[1],p=f?l[2]:null;return r&&P(e).on("scroll.DT",function(t){var e=this.scrollLeft;h.scrollLeft=e,f&&(p.scrollLeft=e)}),P(e).css("max-height",o),n.bCollapse||P(e).css("height",o),t.nScrollHead=h,t.nScrollBody=e,t.nScrollFoot=p,t.aoDrawCallback.push({fn:Ut,sName:"scrolling"}),u[0]}function Ut(n){var t,e,a,r,o,i=n.oScroll,l=i.sX,s=i.sXInner,u=i.sY,c=i.iBarWidth,f=P(n.nScrollHead),d=f[0].style,h=f.children("div"),p=h[0].style,g=h.children("table"),b=n.nScrollBody,S=P(b),m=b.style,v=P(n.nScrollFoot).children("div"),y=v.children("table"),D=P(n.nTHead),_=P(n.nTable),C=_[0],w=C.style,T=n.nTFoot?P(n.nTFoot):null,x=n.oBrowser,A=x.bScrollOversize,I=(H(n.aoColumns,"nTh"),[]),F=[],L=[],R=[],i=function(t){t=t.style;t.paddingTop="0",t.paddingBottom="0",t.borderTopWidth="0",t.borderBottomWidth="0",t.height=0},h=b.scrollHeight>b.clientHeight;if(n.scrollBarVis!==h&&n.scrollBarVis!==N)return n.scrollBarVis=h,void k(n);n.scrollBarVis=h,_.children("thead, tfoot").remove(),T&&(a=T.clone().prependTo(_),t=T.find("tr"),e=a.find("tr")),h=D.clone().prependTo(_),a=D.find("tr"),D=h.find("tr"),h.find("th, td").removeAttr("tabindex"),l||(m.width="100%",f[0].style.width="100%"),P.each(dt(n,h),function(t,e){r=M(n,t),e.style.width=n.aoColumns[r].sWidth}),T&&Xt(function(t){t.style.width=""},e),h=_.outerWidth(),""===l?(w.width="100%",A&&(_.find("tbody").height()>b.offsetHeight||"scroll"==S.css("overflow-y"))&&(w.width=Yt(_.outerWidth()-c)),h=_.outerWidth()):""!==s&&(w.width=Yt(s),h=_.outerWidth()),Xt(i,D),Xt(function(t){var e=j.getComputedStyle?j.getComputedStyle(t).width:Yt(P(t).width());L.push(t.innerHTML),I.push(e)},D),Xt(function(t,e){t.style.width=I[e]},a),P(D).height(0),T&&(Xt(i,e),Xt(function(t){R.push(t.innerHTML),F.push(Yt(P(t).css("width")))},e),Xt(function(t,e){t.style.width=F[e]},t),P(e).height(0)),Xt(function(t,e){t.innerHTML='<div class="dataTables_sizing">'+L[e]+"</div>",t.childNodes[0].style.height="0",t.childNodes[0].style.overflow="hidden",t.style.width=I[e]},D),T&&Xt(function(t,e){t.innerHTML='<div class="dataTables_sizing">'+R[e]+"</div>",t.childNodes[0].style.height="0",t.childNodes[0].style.overflow="hidden",t.style.width=F[e]},e),Math.round(_.outerWidth())<Math.round(h)?(o=b.scrollHeight>b.offsetHeight||"scroll"==S.css("overflow-y")?h+c:h,A&&(b.scrollHeight>b.offsetHeight||"scroll"==S.css("overflow-y"))&&(w.width=Yt(o-c)),""!==l&&""===s||se(n,1,"Possible column misalignment",6)):o="100%",m.width=Yt(o),d.width=Yt(o),T&&(n.nScrollFoot.style.width=Yt(o)),u||A&&(m.height=Yt(C.offsetHeight+c));C=_.outerWidth();g[0].style.width=Yt(C),p.width=Yt(C);g=_.height()>b.clientHeight||"scroll"==S.css("overflow-y"),x="padding"+(x.bScrollbarLeft?"Left":"Right");p[x]=g?c+"px":"0px",T&&(y[0].style.width=Yt(C),v[0].style.width=Yt(C),v[0].style[x]=g?c+"px":"0px"),_.children("colgroup").insertBefore(_.children("thead")),S.trigger("scroll"),!n.bSorted&&!n.bFiltered||n._drawHold||(b.scrollTop=0)}function Xt(t,e,n){for(var a,r,o=0,i=0,l=e.length;i<l;){for(a=e[i].firstChild,r=n?n[i].firstChild:null;a;)1===a.nodeType&&(n?t(a,r,o):t(a,o),o++),a=a.nextSibling,r=n?r.nextSibling:null;i++}}var Vt=/<.*?>/g;function Jt(t){var e,n,a=t.nTable,r=t.aoColumns,o=t.oScroll,i=o.sY,l=o.sX,s=o.sXInner,u=r.length,c=B(t,"bVisible"),f=P("th",t.nTHead),d=a.getAttribute("width"),h=a.parentNode,p=!1,g=t.oBrowser,b=g.bScrollOversize,S=a.style.width;for(S&&-1!==S.indexOf("%")&&(d=S),D=0;D<c.length;D++)null!==(e=r[c[D]]).sWidth&&(e.sWidth=Gt(e.sWidthOrig,h),p=!0);if(b||!p&&!l&&!i&&u==E(t)&&u==f.length)for(D=0;D<u;D++){var m=M(t,D);null!==m&&(r[m].sWidth=Yt(f.eq(D).width()))}else{o=P(a).clone().css("visibility","hidden").removeAttr("id");o.find("tbody tr").remove();var v=P("<tr/>").appendTo(o.find("tbody"));for(o.find("thead, tfoot").remove(),o.append(P(t.nTHead).clone()).append(P(t.nTFoot).clone()),o.find("tfoot th, tfoot td").css("width",""),f=dt(t,o.find("thead")[0]),D=0;D<c.length;D++)e=r[c[D]],f[D].style.width=null!==e.sWidthOrig&&""!==e.sWidthOrig?Yt(e.sWidthOrig):"",e.sWidthOrig&&l&&P(f[D]).append(P("<div/>").css({width:e.sWidthOrig,margin:0,padding:0,border:0,height:1}));if(t.aoData.length)for(D=0;D<c.length;D++)e=r[n=c[D]],P($t(t,n)).clone(!1).append(e.sContentPadding).appendTo(v);P("[name]",o).removeAttr("name");S=P("<div/>").css(l||i?{position:"absolute",top:0,left:0,height:1,right:0,overflow:"hidden"}:{}).append(o).appendTo(h);l&&s?o.width(s):l?(o.css("width","auto"),o.removeAttr("width"),o.width()<h.clientWidth&&d&&o.width(h.clientWidth)):i?o.width(h.clientWidth):d&&o.width(d);for(var y=0,D=0;D<c.length;D++){var _=P(f[D]),C=_.outerWidth()-_.width(),_=g.bBounding?Math.ceil(f[D].getBoundingClientRect().width):_.outerWidth();y+=_,r[c[D]].sWidth=Yt(_-C)}a.style.width=Yt(y),S.remove()}d&&(a.style.width=Yt(d)),!d&&!l||t._reszEvt||(d=function(){P(j).on("resize.DT-"+t.sInstance,qt(function(){k(t)}))},b?setTimeout(d,1e3):d(),t._reszEvt=!0)}var qt=w.util.throttle;function Gt(t,e){if(!t)return 0;t=P("<div/>").css("width",Yt(t)).appendTo(e||y.body),e=t[0].offsetWidth;return t.remove(),e}function $t(t,e){var n=zt(t,e);if(n<0)return null;var a=t.aoData[n];return a.nTr?a.anCells[e]:P("<td/>").html(q(t,n,e,"display"))[0]}function zt(t,e){for(var n,a=-1,r=-1,o=0,i=t.aoData.length;o<i;o++)(n=(n=(n=q(t,o,e,"display")+"").replace(Vt,"")).replace(/ /g," ")).length>a&&(a=n.length,r=o);return r}function Yt(t){return null===t?"0px":"number"==typeof t?t<0?"0px":t+"px":t.match(/\d$/)?t+"px":t}function Zt(t){function e(t){t.length&&!Array.isArray(t[0])?h.push(t):P.merge(h,t)}var n,a,r,o,i,l,s,u=[],c=t.aoColumns,f=t.aaSortingFixed,d=P.isPlainObject(f),h=[];for(Array.isArray(f)&&e(f),d&&f.pre&&e(f.pre),e(t.aaSorting),d&&f.post&&e(f.post),n=0;n<h.length;n++)for(a=0,r=(o=c[s=h[n][0]].aDataSort).length;a<r;a++)l=c[i=o[a]].sType||"string",h[n]._idx===N&&(h[n]._idx=P.inArray(h[n][1],c[i].asSorting)),u.push({src:s,col:i,dir:h[n][1],index:h[n]._idx,type:l,formatter:w.ext.type.order[l+"-pre"]});return u}function Kt(t){var e,n,a,r,c,f=[],u=w.ext.type.order,d=t.aoData,o=(t.aoColumns,0),i=t.aiDisplayMaster;for(U(t),e=0,n=(c=Zt(t)).length;e<n;e++)(r=c[e]).formatter&&o++,ae(t,r.col);if("ssp"!=be(t)&&0!==c.length){for(e=0,a=i.length;e<a;e++)f[i[e]]=e;o===c.length?i.sort(function(t,e){for(var n,a,r,o,i=c.length,l=d[t]._aSortData,s=d[e]._aSortData,u=0;u<i;u++)if(0!=(r=(n=l[(o=c[u]).col])<(a=s[o.col])?-1:a<n?1:0))return"asc"===o.dir?r:-r;return(n=f[t])<(a=f[e])?-1:a<n?1:0}):i.sort(function(t,e){for(var n,a,r,o=c.length,i=d[t]._aSortData,l=d[e]._aSortData,s=0;s<o;s++)if(n=i[(r=c[s]).col],a=l[r.col],0!==(r=(u[r.type+"-"+r.dir]||u["string-"+r.dir])(n,a)))return r;return(n=f[t])<(a=f[e])?-1:a<n?1:0})}t.bSorted=!0}function Qt(t){for(var e=t.aoColumns,n=Zt(t),a=t.oLanguage.oAria,r=0,o=e.length;r<o;r++){var i=e[r],l=i.asSorting,s=i.ariaTitle||i.sTitle.replace(/<.*?>/g,""),u=i.nTh;u.removeAttribute("aria-sort"),s=i.bSortable?s+("asc"===(0<n.length&&n[0].col==r?(u.setAttribute("aria-sort","asc"==n[0].dir?"ascending":"descending"),l[n[0].index+1]||l[0]):l[0])?a.sSortAscending:a.sSortDescending):s,u.setAttribute("aria-label",s)}}function te(t,e,n,a){var r,o=t.aoColumns[e],i=t.aaSorting,l=o.asSorting,o=function(t,e){var n=t._idx;return n===N&&(n=P.inArray(t[1],l)),n+1<l.length?n+1:e?null:0};"number"==typeof i[0]&&(i=t.aaSorting=[i]),n&&t.oFeatures.bSortMulti?-1!==(n=P.inArray(e,H(i,"0")))?(null===(r=o(i[n],!0))&&1===i.length&&(r=0),null===r?i.splice(n,1):(i[n][1]=l[r],i[n]._idx=r)):(i.push([e,l[0],0]),i[i.length-1]._idx=0):i.length&&i[0][0]==e?(r=o(i[0]),i.length=1,i[0][1]=l[r],i[0]._idx=r):(i.length=0,i.push([e,l[0]]),i[0]._idx=0),ut(t),"function"==typeof a&&a(t)}function ee(e,t,n,a){var r=e.aoColumns[n];fe(t,{},function(t){!1!==r.bSortable&&(e.oFeatures.bProcessing?(Et(e,!0),setTimeout(function(){te(e,n,t.shiftKey,a),"ssp"!==be(e)&&Et(e,!1)},0)):te(e,n,t.shiftKey,a))})}function ne(t){var e,n,a,r=t.aLastSort,o=t.oClasses.sSortColumn,i=Zt(t),l=t.oFeatures;if(l.bSort&&l.bSortClasses){for(e=0,n=r.length;e<n;e++)a=r[e].src,P(H(t.aoData,"anCells",a)).removeClass(o+(e<2?e+1:3));for(e=0,n=i.length;e<n;e++)a=i[e].src,P(H(t.aoData,"anCells",a)).addClass(o+(e<2?e+1:3))}t.aLastSort=i}function ae(t,e){var n,a,r,o=t.aoColumns[e],i=w.ext.order[o.sSortDataType];i&&(n=i.call(t.oInstance,t,e,W(t,e)));for(var l=w.ext.type.order[o.sType+"-pre"],s=0,u=t.aoData.length;s<u;s++)(a=t.aoData[s])._aSortData||(a._aSortData=[]),a._aSortData[e]&&!i||(r=i?n[s]:q(t,s,e,"sort"),a._aSortData[e]=l?l(r):r)}function re(n){var t;n._bLoadingState||(t={time:+new Date,start:n._iDisplayStart,length:n._iDisplayLength,order:P.extend(!0,[],n.aaSorting),search:It(n.oPreviousSearch),columns:P.map(n.aoColumns,function(t,e){return{visible:t.bVisible,search:It(n.aoPreSearchCols[e])}})},n.oSavedState=t,he(n,"aoStateSaveParams","stateSaveParams",[n,t]),n.oFeatures.bStateSave&&!n.bDestroying&&n.fnStateSaveCallback.call(n.oInstance,n,t))}function oe(e,t,n){if(e.oFeatures.bStateSave){var a=e.fnStateLoadCallback.call(e.oInstance,e,function(t){ie(e,t,n)});return a!==N&&ie(e,a,n),!0}n()}function ie(n,t,e){var a,r,o=n.aoColumns;n._bLoadingState=!0;var i=n._bInitComplete?new w.Api(n):null;if(!t||!t.time)return n._bLoadingState=!1,void e();var l=he(n,"aoStateLoadParams","stateLoadParams",[n,t]);if(-1!==P.inArray(!1,l))return n._bLoadingState=!1,void e();l=n.iStateDuration;if(0<l&&t.time<+new Date-1e3*l)return n._bLoadingState=!1,void e();if(t.columns&&o.length!==t.columns.length)return n._bLoadingState=!1,void e();if(n.oLoadedState=P.extend(!0,{},t),t.start!==N&&(null===i?(n._iDisplayStart=t.start,n.iInitDisplayStart=t.start):Mt(n,t.start/t.length)),t.length!==N&&(n._iDisplayLength=t.length),t.order!==N&&(n.aaSorting=[],P.each(t.order,function(t,e){n.aaSorting.push(e[0]>=o.length?[0,e[1]]:e)})),t.search!==N&&P.extend(n.oPreviousSearch,Ft(t.search)),t.columns){for(a=0,r=t.columns.length;a<r;a++){var s=t.columns[a];s.visible!==N&&(i?i.column(a).visible(s.visible,!1):o[a].bVisible=s.visible),s.search!==N&&P.extend(n.aoPreSearchCols[a],Ft(s.search))}i&&i.columns.adjust()}n._bLoadingState=!1,he(n,"aoStateLoaded","stateLoaded",[n,t]),e()}function le(t){var e=w.settings,t=P.inArray(t,H(e,"nTable"));return-1!==t?e[t]:null}function se(t,e,n,a){if(n="DataTables warning: "+(t?"table id="+t.sTableId+" - ":"")+n,a&&(n+=". For more information about this error, please see http://datatables.net/tn/"+a),e)j.console&&console.log&&console.log(n);else{e=w.ext,e=e.sErrMode||e.errMode;if(t&&he(t,null,"error",[t,a,n]),"alert"==e)alert(n);else{if("throw"==e)throw new Error(n);"function"==typeof e&&e(t,a,n)}}}function ue(n,a,t,e){Array.isArray(t)?P.each(t,function(t,e){Array.isArray(e)?ue(n,a,e[0],e[1]):ue(n,a,e)}):(e===N&&(e=t),a[t]!==N&&(n[e]=a[t]))}function ce(t,e,n){var a,r;for(r in e)e.hasOwnProperty(r)&&(a=e[r],P.isPlainObject(a)?(P.isPlainObject(t[r])||(t[r]={}),P.extend(!0,t[r],a)):n&&"data"!==r&&"aaData"!==r&&Array.isArray(a)?t[r]=a.slice():t[r]=a);return t}function fe(e,t,n){P(e).on("click.DT",t,function(t){P(e).trigger("blur"),n(t)}).on("keypress.DT",t,function(t){13===t.which&&(t.preventDefault(),n(t))}).on("selectstart.DT",function(){return!1})}function de(t,e,n,a){n&&t[e].push({fn:n,sName:a})}function he(n,t,e,a){var r=[];return t&&(r=P.map(n[t].slice().reverse(),function(t,e){return t.fn.apply(n.oInstance,a)})),null!==e&&(e=P.Event(e+".dt"),P(n.nTable).trigger(e,a),r.push(e.result)),r}function pe(t){var e=t._iDisplayStart,n=t.fnDisplayEnd(),a=t._iDisplayLength;n<=e&&(e=n-a),e-=e%a,(-1===a||e<0)&&(e=0),t._iDisplayStart=e}function ge(t,e){var n=t.renderer,t=w.ext.renderer[e];return P.isPlainObject(n)&&n[e]?t[n[e]]||t._:"string"==typeof n&&t[n]||t._}function be(t){return t.oFeatures.bServerSide?"ssp":t.ajax||t.sAjaxSource?"ajax":"dom"}var Se=[],me=Array.prototype,ve=function(t,e){if(!(this instanceof ve))return new ve(t,e);function n(t){var e,n,a,r=(t=t,n=w.settings,a=P.map(n,function(t,e){return t.nTable}),t?t.nTable&&t.oApi?[t]:t.nodeName&&"table"===t.nodeName.toLowerCase()?-1!==(e=P.inArray(t,a))?[n[e]]:null:t&&"function"==typeof t.settings?t.settings().toArray():("string"==typeof t?r=P(t):t instanceof P&&(r=t),r?r.map(function(t){return-1!==(e=P.inArray(this,a))?n[e]:null}).toArray():void 0):[]);r&&o.push.apply(o,r)}var o=[];if(Array.isArray(t))for(var a=0,r=t.length;a<r;a++)n(t[a]);else n(t);this.context=b(o),e&&P.merge(this,e),this.selector={rows:null,cols:null,opts:null},ve.extend(this,this,Se)};w.Api=ve,P.extend(ve.prototype,{any:function(){return 0!==this.count()},concat:me.concat,context:[],count:function(){return this.flatten().length},each:function(t){for(var e=0,n=this.length;e<n;e++)t.call(this,this[e],e,this);return this},eq:function(t){var e=this.context;return e.length>t?new ve(e[t],this[t]):null},filter:function(t){var e=[];if(me.filter)e=me.filter.call(this,t,this);else for(var n=0,a=this.length;n<a;n++)t.call(this,this[n],n,this)&&e.push(this[n]);return new ve(this.context,e)},flatten:function(){var t=[];return new ve(this.context,t.concat.apply(t,this.toArray()))},join:me.join,indexOf:me.indexOf||function(t,e){for(var n=e||0,a=this.length;n<a;n++)if(this[n]===t)return n;return-1},iterator:function(t,e,n,a){var r,o,i,l,s,u,c,f,d=[],h=this.context,p=this.selector;for("string"==typeof t&&(a=n,n=e,e=t,t=!1),o=0,i=h.length;o<i;o++){var g=new ve(h[o]);if("table"===e)(r=n.call(g,h[o],o))!==N&&d.push(r);else if("columns"===e||"rows"===e)(r=n.call(g,h[o],this[o],o))!==N&&d.push(r);else if("column"===e||"column-rows"===e||"row"===e||"cell"===e)for(c=this[o],"column-rows"===e&&(u=Te(h[o],p.opts)),l=0,s=c.length;l<s;l++)f=c[l],(r="cell"===e?n.call(g,h[o],f.row,f.column,o,l):n.call(g,h[o],f,o,l,u))!==N&&d.push(r)}if(d.length||a){a=new ve(h,t?d.concat.apply([],d):d),t=a.selector;return t.rows=p.rows,t.cols=p.cols,t.opts=p.opts,a}return this},lastIndexOf:me.lastIndexOf||function(t,e){return this.indexOf.apply(this.toArray.reverse(),arguments)},length:0,map:function(t){var e=[];if(me.map)e=me.map.call(this,t,this);else for(var n=0,a=this.length;n<a;n++)e.push(t.call(this,this[n],n));return new ve(this.context,e)},pluck:function(e){return this.map(function(t){return t[e]})},pop:me.pop,push:me.push,reduce:me.reduce||function(t,e){return L(this,t,e,0,this.length,1)},reduceRight:me.reduceRight||function(t,e){return L(this,t,e,this.length-1,-1,-1)},reverse:me.reverse,selector:null,shift:me.shift,slice:function(){return new ve(this.context,this)},sort:me.sort,splice:me.splice,toArray:function(){return me.slice.call(this)},to$:function(){return P(this)},toJQuery:function(){return P(this)},unique:function(){return new ve(this.context,b(this))},unshift:me.unshift}),ve.extend=function(t,e,n){if(n.length&&e&&(e instanceof ve||e.__dt_wrapper))for(var a,r=0,o=n.length;r<o;r++)e[(a=n[r]).name]="function"===a.type?function(e,n,a){return function(){var t=n.apply(e,arguments);return ve.extend(t,t,a.methodExt),t}}(t,a.val,a):"object"===a.type?{}:a.val,e[a.name].__dt_wrapper=!0,ve.extend(t,e[a.name],a.propExt)},ve.register=e=function(t,e){if(Array.isArray(t))for(var n=0,a=t.length;n<a;n++)ve.register(t[n],e);else for(var r,o,i=t.split("."),l=Se,s=0,u=i.length;s<u;s++){var c=function(t,e){for(var n=0,a=t.length;n<a;n++)if(t[n].name===e)return t[n];return null}(l,r=(o=-1!==i[s].indexOf("()"))?i[s].replace("()",""):i[s]);c||(c={name:r,val:{},methodExt:[],propExt:[],type:"object"},l.push(c)),s===u-1?(c.val=e,c.type="function"==typeof e?"function":P.isPlainObject(e)?"object":"other"):l=o?c.methodExt:c.propExt}},ve.registerPlural=t=function(t,e,n){ve.register(t,n),ve.register(e,function(){var t=n.apply(this,arguments);return t===this?this:t instanceof ve?t.length?Array.isArray(t[0])?new ve(t.context,t[0]):t[0]:N:t})};var ye=function(t,n){if(Array.isArray(t))return P.map(t,function(t){return ye(t,n)});if("number"==typeof t)return[n[t]];var a=P.map(n,function(t,e){return t.nTable});return P(a).filter(t).map(function(t){var e=P.inArray(this,a);return n[e]}).toArray()};e("tables()",function(t){return t!==N&&null!==t?new ve(ye(t,this.context)):this}),e("table()",function(t){var e=this.tables(t),t=e.context;return t.length?new ve(t[0]):e}),t("tables().nodes()","table().node()",function(){return this.iterator("table",function(t){return t.nTable},1)}),t("tables().body()","table().body()",function(){return this.iterator("table",function(t){return t.nTBody},1)}),t("tables().header()","table().header()",function(){return this.iterator("table",function(t){return t.nTHead},1)}),t("tables().footer()","table().footer()",function(){return this.iterator("table",function(t){return t.nTFoot},1)}),t("tables().containers()","table().container()",function(){return this.iterator("table",function(t){return t.nTableWrapper},1)}),e("draw()",function(e){return this.iterator("table",function(t){"page"===e?st(t):("string"==typeof e&&(e="full-hold"!==e),ut(t,!1===e))})}),e("page()",function(e){return e===N?this.page.info().page:this.iterator("table",function(t){Mt(t,e)})}),e("page.info()",function(t){if(0===this.context.length)return N;var e=this.context[0],n=e._iDisplayStart,a=e.oFeatures.bPaginate?e._iDisplayLength:-1,r=e.fnRecordsDisplay(),o=-1===a;return{page:o?0:Math.floor(n/a),pages:o?1:Math.ceil(r/a),start:n,end:e.fnDisplayEnd(),length:a,recordsTotal:e.fnRecordsTotal(),recordsDisplay:r,serverSide:"ssp"===be(e)}}),e("page.len()",function(e){return e===N?0!==this.context.length?this.context[0]._iDisplayLength:N:this.iterator("table",function(t){Ht(t,e)})});function De(r,o,t){var e,n;t&&(e=new ve(r)).one("draw",function(){t(e.ajax.json())}),"ssp"==be(r)?ut(r,o):(Et(r,!0),(n=r.jqXHR)&&4!==n.readyState&&n.abort(),ht(r,[],function(t){tt(r);for(var e=St(r,t),n=0,a=e.length;n<a;n++)V(r,e[n]);ut(r,o),Et(r,!1)}))}e("ajax.json()",function(){var t=this.context;if(0<t.length)return t[0].json}),e("ajax.params()",function(){var t=this.context;if(0<t.length)return t[0].oAjaxData}),e("ajax.reload()",function(e,n){return this.iterator("table",function(t){De(t,!1===n,e)})}),e("ajax.url()",function(e){var t=this.context;return e===N?0===t.length?N:(t=t[0]).ajax?P.isPlainObject(t.ajax)?t.ajax.url:t.ajax:t.sAjaxSource:this.iterator("table",function(t){P.isPlainObject(t.ajax)?t.ajax.url=e:t.ajax=e})}),e("ajax.url().load()",function(e,n){return this.iterator("table",function(t){De(t,!1===n,e)})});function _e(t,e,n,a,r){var o,i,l,s,u,c,f=[],d=typeof e;for(e&&"string"!=d&&"function"!=d&&e.length!==N||(e=[e]),l=0,s=e.length;l<s;l++)for(u=0,c=(i=e[l]&&e[l].split&&!e[l].match(/[\[\(:]/)?e[l].split(","):[e[l]]).length;u<c;u++)(o=n("string"==typeof i[u]?i[u].trim():i[u]))&&o.length&&(f=f.concat(o));var h=p.selector[t];if(h.length)for(l=0,s=h.length;l<s;l++)f=h[l](a,r,f);return b(f)}function Ce(t){return(t=t||{}).filter&&t.search===N&&(t.search=t.filter),P.extend({search:"none",order:"current",page:"all"},t)}function we(t){for(var e=0,n=t.length;e<n;e++)if(0<t[e].length)return t[0]=t[e],t[0].length=1,t.length=1,t.context=[t.context[e]],t;return t.length=0,t}var Te=function(t,e){var n,a=[],r=t.aiDisplay,o=t.aiDisplayMaster,i=e.search,l=e.order,e=e.page;if("ssp"==be(t))return"removed"===i?[]:d(0,o.length);if("current"==e)for(u=t._iDisplayStart,c=t.fnDisplayEnd();u<c;u++)a.push(r[u]);else if("current"==l||"applied"==l){if("none"==i)a=o.slice();else if("applied"==i)a=r.slice();else if("removed"==i){for(var s={},u=0,c=r.length;u<c;u++)s[r[u]]=null;a=P.map(o,function(t){return s.hasOwnProperty(t)?null:t})}}else if("index"==l||"original"==l)for(u=0,c=t.aoData.length;u<c;u++)("none"==i||-1===(n=P.inArray(u,r))&&"removed"==i||0<=n&&"applied"==i)&&a.push(u);return a};e("rows()",function(e,n){e===N?e="":P.isPlainObject(e)&&(n=e,e=""),n=Ce(n);var t=this.iterator("table",function(t){return _e("row",e,function(n){var t=f(n),a=o.aoData;if(null!==t&&!i)return[t];if(l=l||Te(o,i),null!==t&&-1!==P.inArray(t,l))return[t];if(null===n||n===N||""===n)return l;if("function"==typeof n)return P.map(l,function(t){var e=a[t];return n(t,e._aData,e.nTr)?t:null});if(n.nodeName){var e=n._DT_RowIndex,t=n._DT_CellIndex;if(e!==N)return a[e]&&a[e].nTr===n?[e]:[];if(t)return a[t.row]&&a[t.row].nTr===n.parentNode?[t.row]:[];t=P(n).closest("*[data-dt-row]");return t.length?[t.data("dt-row")]:[]}if("string"==typeof n&&"#"===n.charAt(0)){var r=o.aIds[n.replace(/^#/,"")];if(r!==N)return[r.idx]}r=m(S(o.aoData,l,"nTr"));return P(r).filter(n).map(function(){return this._DT_RowIndex}).toArray()},o=t,i=n);var o,i,l},1);return t.selector.rows=e,t.selector.opts=n,t}),e("rows().nodes()",function(){return this.iterator("row",function(t,e){return t.aoData[e].nTr||N},1)}),e("rows().data()",function(){return this.iterator(!0,"rows",function(t,e){return S(t.aoData,e,"_aData")},1)}),t("rows().cache()","row().cache()",function(n){return this.iterator("row",function(t,e){e=t.aoData[e];return"search"===n?e._aFilterData:e._aSortData},1)}),t("rows().invalidate()","row().invalidate()",function(n){return this.iterator("row",function(t,e){nt(t,e,n)})}),t("rows().indexes()","row().index()",function(){return this.iterator("row",function(t,e){return e},1)}),t("rows().ids()","row().id()",function(t){for(var e=[],n=this.context,a=0,r=n.length;a<r;a++)for(var o=0,i=this[a].length;o<i;o++){var l=n[a].rowIdFn(n[a].aoData[this[a][o]]._aData);e.push((!0===t?"#":"")+l)}return new ve(n,e)}),t("rows().remove()","row().remove()",function(){var f=this;return this.iterator("row",function(t,e,n){var a,r,o,i,l,s,u=t.aoData,c=u[e];for(u.splice(e,1),a=0,r=u.length;a<r;a++)if(s=(l=u[a]).anCells,null!==l.nTr&&(l.nTr._DT_RowIndex=a),null!==s)for(o=0,i=s.length;o<i;o++)s[o]._DT_CellIndex.row=a;et(t.aiDisplayMaster,e),et(t.aiDisplay,e),et(f[n],e,!1),0<t._iRecordsDisplay&&t._iRecordsDisplay--,pe(t);c=t.rowIdFn(c._aData);c!==N&&delete t.aIds[c]}),this.iterator("table",function(t){for(var e=0,n=t.aoData.length;e<n;e++)t.aoData[e].idx=e}),this}),e("rows.add()",function(o){var t=this.iterator("table",function(t){for(var e,n=[],a=0,r=o.length;a<r;a++)(e=o[a]).nodeName&&"TR"===e.nodeName.toUpperCase()?n.push(J(t,e)[0]):n.push(V(t,e));return n},1),e=this.rows(-1);return e.pop(),P.merge(e,t),e}),e("row()",function(t,e){return we(this.rows(t,e))}),e("row().data()",function(t){var e=this.context;if(t===N)return e.length&&this.length?e[0].aoData[this[0]]._aData:N;var n=e[0].aoData[this[0]];return n._aData=t,Array.isArray(t)&&n.nTr&&n.nTr.id&&K(e[0].rowId)(t,n.nTr.id),nt(e[0],this[0],"data"),this}),e("row().node()",function(){var t=this.context;return t.length&&this.length&&t[0].aoData[this[0]].nTr||null}),e("row.add()",function(e){e instanceof P&&e.length&&(e=e[0]);var t=this.iterator("table",function(t){return e.nodeName&&"TR"===e.nodeName.toUpperCase()?J(t,e)[0]:V(t,e)});return this.row(t[0])}),P(y).on("plugin-init.dt",function(t,e){var r=new ve(e);r.on("stateSaveParams",function(t,e,n){var a=r.rows().iterator("row",function(t,e){return t.aoData[e]._detailsShow?e:N});n.childRows=r.rows(a).ids(!0).toArray()});var n=r.state.loaded();n&&n.childRows&&r.rows(n.childRows).every(function(){he(e,null,"requestChild",[this])})});function xe(t,e){var n=t.context;!n.length||(t=n[0].aoData[e!==N?e:t[0]])&&t._details&&(t._details.remove(),t._detailsShow=N,t._details=N,P(t.nTr).removeClass("dt-hasChild"),re(n[0]))}function Ae(t,e){var n,a=t.context;a.length&&t.length&&((n=a[0].aoData[t[0]])._details&&((n._detailsShow=e)?(n._details.insertAfter(n.nTr),P(n.nTr).addClass("dt-hasChild")):(n._details.detach(),P(n.nTr).removeClass("dt-hasChild")),he(a[0],null,"childRow",[e,t.row(t[0])]),Ie(a[0]),re(a[0])))}var Ie=function(s){var r=new ve(s),t=".dt.DT_details",e="draw"+t,n="column-visibility"+t,t="destroy"+t,u=s.aoData;r.off(e+" "+n+" "+t),0<H(u,"_details").length&&(r.on(e,function(t,e){s===e&&r.rows({page:"current"}).eq(0).each(function(t){t=u[t];t._detailsShow&&t._details.insertAfter(t.nTr)})}),r.on(n,function(t,e,n,a){if(s===e)for(var r,o=E(e),i=0,l=u.length;i<l;i++)(r=u[i])._details&&r._details.children("td[colspan]").attr("colspan",o)}),r.on(t,function(t,e){if(s===e)for(var n=0,a=u.length;n<a;n++)u[n]._details&&xe(r,n)}))},Fe="row().child",D=Fe+"()";e(D,function(t,e){var o,i,l,n=this.context;return t===N?n.length&&this.length?n[0].aoData[this[0]]._details:N:(!0===t?this.child.show():!1===t?xe(this):n.length&&this.length&&(o=n[0],n=n[0].aoData[this[0]],i=[],(l=function(t,e){var n;if(Array.isArray(t)||t instanceof P)for(var a=0,r=t.length;a<r;a++)l(t[a],e);else t.nodeName&&"tr"===t.nodeName.toLowerCase()?i.push(t):(n=P("<tr><td></td></tr>").addClass(e),P("td",n).addClass(e).html(t)[0].colSpan=E(o),i.push(n[0]))})(t,e),n._details&&n._details.detach(),n._details=P(i),n._detailsShow&&n._details.insertAfter(n.nTr)),this)}),e([Fe+".show()",D+".show()"],function(t){return Ae(this,!0),this}),e([Fe+".hide()",D+".hide()"],function(){return Ae(this,!1),this}),e([Fe+".remove()",D+".remove()"],function(){return xe(this),this}),e(Fe+".isShown()",function(){var t=this.context;return t.length&&this.length&&t[0].aoData[this[0]]._detailsShow||!1});function Le(t,e,n,a,r){for(var o=[],i=0,l=r.length;i<l;i++)o.push(q(t,r[i],e));return o}var Re=/^([^:]+):(name|visIdx|visible)$/;e("columns()",function(n,a){n===N?n="":P.isPlainObject(n)&&(a=n,n=""),a=Ce(a);var t=this.iterator("table",function(t){return e=n,l=a,s=(i=t).aoColumns,u=H(s,"sName"),c=H(s,"nTh"),_e("column",e,function(n){var t=f(n);if(""===n)return d(s.length);if(null!==t)return[0<=t?t:s.length+t];if("function"==typeof n){var a=Te(i,l);return P.map(s,function(t,e){return n(e,Le(i,e,0,0,a),c[e])?e:null})}var r="string"==typeof n?n.match(Re):"";if(r)switch(r[2]){case"visIdx":case"visible":var e=parseInt(r[1],10);if(e<0){var o=P.map(s,function(t,e){return t.bVisible?e:null});return[o[o.length+e]]}return[M(i,e)];case"name":return P.map(u,function(t,e){return t===r[1]?e:null});default:return[]}if(n.nodeName&&n._DT_CellIndex)return[n._DT_CellIndex.column];t=P(c).filter(n).map(function(){return P.inArray(this,c)}).toArray();if(t.length||!n.nodeName)return t;t=P(n).closest("*[data-dt-column]");return t.length?[t.data("dt-column")]:[]},i,l);var i,e,l,s,u,c},1);return t.selector.cols=n,t.selector.opts=a,t}),t("columns().header()","column().header()",function(t,e){return this.iterator("column",function(t,e){return t.aoColumns[e].nTh},1)}),t("columns().footer()","column().footer()",function(t,e){return this.iterator("column",function(t,e){return t.aoColumns[e].nTf},1)}),t("columns().data()","column().data()",function(){return this.iterator("column-rows",Le,1)}),t("columns().dataSrc()","column().dataSrc()",function(){return this.iterator("column",function(t,e){return t.aoColumns[e].mData},1)}),t("columns().cache()","column().cache()",function(o){return this.iterator("column-rows",function(t,e,n,a,r){return S(t.aoData,r,"search"===o?"_aFilterData":"_aSortData",e)},1)}),t("columns().nodes()","column().nodes()",function(){return this.iterator("column-rows",function(t,e,n,a,r){return S(t.aoData,r,"anCells",e)},1)}),t("columns().visible()","column().visible()",function(n,a){var e=this,t=this.iterator("column",function(t,e){return n===N?t.aoColumns[e].bVisible:void function(t,e,n){var a,r,o=t.aoColumns,i=o[e],l=t.aoData;if(n===N)return i.bVisible;if(i.bVisible!==n){if(n)for(var s=P.inArray(!0,H(o,"bVisible"),e+1),u=0,c=l.length;u<c;u++)r=l[u].nTr,a=l[u].anCells,r&&r.insertBefore(a[e],a[s]||null);else P(H(t.aoData,"anCells",e)).detach();i.bVisible=n}}(t,e,n)});return n!==N&&this.iterator("table",function(t){lt(t,t.aoHeader),lt(t,t.aoFooter),t.aiDisplay.length||P(t.nTBody).find("td[colspan]").attr("colspan",E(t)),re(t),e.iterator("column",function(t,e){he(t,null,"column-visibility",[t,e,n,a])}),a!==N&&!a||e.columns.adjust()}),t}),t("columns().indexes()","column().index()",function(n){return this.iterator("column",function(t,e){return"visible"===n?W(t,e):e},1)}),e("columns.adjust()",function(){return this.iterator("table",function(t){k(t)},1)}),e("column.index()",function(t,e){if(0!==this.context.length){var n=this.context[0];return"fromVisible"===t||"toData"===t?M(n,e):"fromData"===t||"toVisible"===t?W(n,e):void 0}}),e("column()",function(t,e){return we(this.columns(t,e))});e("cells()",function(g,t,b){if(P.isPlainObject(g)&&(g.row===N?(b=g,g=null):(b=t,t=null)),P.isPlainObject(t)&&(b=t,t=null),null===t||t===N)return this.iterator("table",function(t){return a=t,e=g,n=Ce(b),f=a.aoData,d=Te(a,n),t=m(S(f,d,"anCells")),h=P(v([],t)),p=a.aoColumns.length,_e("cell",e,function(t){var e="function"==typeof t;if(null===t||t===N||e){for(o=[],i=0,l=d.length;i<l;i++)for(r=d[i],s=0;s<p;s++)u={row:r,column:s},e?(c=f[r],t(u,q(a,r,s),c.anCells?c.anCells[s]:null)&&o.push(u)):o.push(u);return o}if(P.isPlainObject(t))return t.column!==N&&t.row!==N&&-1!==P.inArray(t.row,d)?[t]:[];var n=h.filter(t).map(function(t,e){return{row:e._DT_CellIndex.row,column:e._DT_CellIndex.column}}).toArray();return n.length||!t.nodeName?n:(c=P(t).closest("*[data-dt-row]")).length?[{row:c.data("dt-row"),column:c.data("dt-column")}]:[]},a,n);var a,e,n,r,o,i,l,s,u,c,f,d,h,p});var a,r,o,i,e=b?{page:b.page,order:b.order,search:b.search}:{},l=this.columns(t,e),s=this.rows(g,e),e=this.iterator("table",function(t,e){var n=[];for(a=0,r=s[e].length;a<r;a++)for(o=0,i=l[e].length;o<i;o++)n.push({row:s[e][a],column:l[e][o]});return n},1),e=b&&b.selected?this.cells(e,b):e;return P.extend(e.selector,{cols:t,rows:g,opts:b}),e}),t("cells().nodes()","cell().node()",function(){return this.iterator("cell",function(t,e,n){e=t.aoData[e];return e&&e.anCells?e.anCells[n]:N},1)}),e("cells().data()",function(){return this.iterator("cell",function(t,e,n){return q(t,e,n)},1)}),t("cells().cache()","cell().cache()",function(a){return a="search"===a?"_aFilterData":"_aSortData",this.iterator("cell",function(t,e,n){return t.aoData[e][a][n]},1)}),t("cells().render()","cell().render()",function(a){return this.iterator("cell",function(t,e,n){return q(t,e,n,a)},1)}),t("cells().indexes()","cell().index()",function(){return this.iterator("cell",function(t,e,n){return{row:e,column:n,columnVisible:W(t,n)}},1)}),t("cells().invalidate()","cell().invalidate()",function(a){return this.iterator("cell",function(t,e,n){nt(t,e,a,n)})}),e("cell()",function(t,e,n){return we(this.cells(t,e,n))}),e("cell().data()",function(t){var e=this.context,n=this[0];return t===N?e.length&&n.length?q(e[0],n[0].row,n[0].column):N:(G(e[0],n[0].row,n[0].column,t),nt(e[0],n[0].row,"data",n[0].column),this)}),e("order()",function(e,t){var n=this.context;return e===N?0!==n.length?n[0].aaSorting:N:("number"==typeof e?e=[[e,t]]:e.length&&!Array.isArray(e[0])&&(e=Array.prototype.slice.call(arguments)),this.iterator("table",function(t){t.aaSorting=e.slice()}))}),e("order.listener()",function(e,n,a){return this.iterator("table",function(t){ee(t,e,n,a)})}),e("order.fixed()",function(e){if(e)return this.iterator("table",function(t){t.aaSortingFixed=P.extend(!0,{},e)});var t=this.context,t=t.length?t[0].aaSortingFixed:N;return Array.isArray(t)?{pre:t}:t}),e(["columns().order()","column().order()"],function(a){var r=this;return this.iterator("table",function(t,e){var n=[];P.each(r[e],function(t,e){n.push([e,a])}),t.aaSorting=n})}),e("search()",function(e,n,a,r){var t=this.context;return e===N?0!==t.length?t[0].oPreviousSearch.sSearch:N:this.iterator("table",function(t){t.oFeatures.bFilter&&vt(t,P.extend({},t.oPreviousSearch,{sSearch:e+"",bRegex:null!==n&&n,bSmart:null===a||a,bCaseInsensitive:null===r||r}),1)})}),t("columns().search()","column().search()",function(a,r,o,i){return this.iterator("column",function(t,e){var n=t.aoPreSearchCols;if(a===N)return n[e].sSearch;t.oFeatures.bFilter&&(P.extend(n[e],{sSearch:a+"",bRegex:null!==r&&r,bSmart:null===o||o,bCaseInsensitive:null===i||i}),vt(t,t.oPreviousSearch,1))})}),e("state()",function(){return this.context.length?this.context[0].oSavedState:null}),e("state.clear()",function(){return this.iterator("table",function(t){t.fnStateSaveCallback.call(t.oInstance,t,{})})}),e("state.loaded()",function(){return this.context.length?this.context[0].oLoadedState:null}),e("state.save()",function(){return this.iterator("table",function(t){re(t)})}),w.versionCheck=w.fnVersionCheck=function(t){for(var e,n,a=w.version.split("."),r=t.split("."),o=0,i=r.length;o<i;o++)if((e=parseInt(a[o],10)||0)!==(n=parseInt(r[o],10)||0))return n<e;return!0},w.isDataTable=w.fnIsDataTable=function(t){var r=P(t).get(0),o=!1;return t instanceof w.Api||(P.each(w.settings,function(t,e){var n=e.nScrollHead?P("table",e.nScrollHead)[0]:null,a=e.nScrollFoot?P("table",e.nScrollFoot)[0]:null;e.nTable!==r&&n!==r&&a!==r||(o=!0)}),o)},w.tables=w.fnTables=function(e){var t=!1;P.isPlainObject(e)&&(t=e.api,e=e.visible);var n=P.map(w.settings,function(t){if(!e||e&&P(t.nTable).is(":visible"))return t.nTable});return t?new ve(n):n},w.camelToHungarian=T,e("$()",function(t,e){e=this.rows(e).nodes(),e=P(e);return P([].concat(e.filter(t).toArray(),e.find(t).toArray()))}),P.each(["on","one","off"],function(t,n){e(n+"()",function(){var t=Array.prototype.slice.call(arguments);t[0]=P.map(t[0].split(/\s/),function(t){return t.match(/\.dt\b/)?t:t+".dt"}).join(" ");var e=P(this.tables().nodes());return e[n].apply(e,t),this})}),e("clear()",function(){return this.iterator("table",function(t){tt(t)})}),e("settings()",function(){return new ve(this.context,this.context)}),e("init()",function(){var t=this.context;return t.length?t[0].oInit:null}),e("data()",function(){return this.iterator("table",function(t){return H(t.aoData,"_aData")}).flatten()}),e("destroy()",function(f){return f=f||!1,this.iterator("table",function(e){var n,t=e.nTableWrapper.parentNode,a=e.oClasses,r=e.nTable,o=e.nTBody,i=e.nTHead,l=e.nTFoot,s=P(r),u=P(o),c=P(e.nTableWrapper),o=P.map(e.aoData,function(t){return t.nTr});e.bDestroying=!0,he(e,"aoDestroyCallback","destroy",[e]),f||new ve(e).columns().visible(!0),c.off(".DT").find(":not(tbody *)").off(".DT"),P(j).off(".DT-"+e.sInstance),r!=i.parentNode&&(s.children("thead").detach(),s.append(i)),l&&r!=l.parentNode&&(s.children("tfoot").detach(),s.append(l)),e.aaSorting=[],e.aaSortingFixed=[],ne(e),P(o).removeClass(e.asStripeClasses.join(" ")),P("th, td",i).removeClass(a.sSortable+" "+a.sSortableAsc+" "+a.sSortableDesc+" "+a.sSortableNone),u.children().detach(),u.append(o);o=f?"remove":"detach";s[o](),c[o](),!f&&t&&(t.insertBefore(r,e.nTableReinsertBefore),s.css("width",e.sDestroyWidth).removeClass(a.sTable),(n=e.asDestroyStripes.length)&&u.children().each(function(t){P(this).addClass(e.asDestroyStripes[t%n])}));u=P.inArray(e,w.settings);-1!==u&&w.settings.splice(u,1)})}),P.each(["column","row","cell"],function(t,s){e(s+"s().every()",function(o){var i=this.selector.opts,l=this;return this.iterator(s,function(t,e,n,a,r){o.call(l[s](e,"cell"===s?n:i,"cell"===s?i:N),e,n,a,r)})})}),e("i18n()",function(t,e,n){var a=this.context[0],a=Z(t)(a.oLanguage);return a===N&&(a=e),n!==N&&P.isPlainObject(a)&&(a=a[n]!==N?a[n]:a._),a.replace("%d",n)}),w.version="1.11.4",w.settings=[],w.models={},w.models.oSearch={bCaseInsensitive:!0,sSearch:"",bRegex:!1,bSmart:!0,return:!1},w.models.oRow={nTr:null,anCells:null,_aData:[],_aSortData:null,_aFilterData:null,_sFilterRow:null,_sRowStripe:"",src:null,idx:-1},w.models.oColumn={idx:null,aDataSort:null,asSorting:null,bSearchable:null,bSortable:null,bVisible:null,_sManualType:null,_bAttrSrc:!1,fnCreatedCell:null,fnGetData:null,fnSetData:null,mData:null,mRender:null,nTh:null,nTf:null,sClass:null,sContentPadding:null,sDefaultContent:null,sName:null,sSortDataType:"std",sSortingClass:null,sSortingClassJUI:null,sTitle:null,sType:null,sWidth:null,sWidthOrig:null},w.defaults={aaData:null,aaSorting:[[0,"asc"]],aaSortingFixed:[],ajax:null,aLengthMenu:[10,25,50,100],aoColumns:null,aoColumnDefs:null,aoSearchCols:[],asStripeClasses:null,bAutoWidth:!0,bDeferRender:!1,bDestroy:!1,bFilter:!0,bInfo:!0,bLengthChange:!0,bPaginate:!0,bProcessing:!1,bRetrieve:!1,bScrollCollapse:!1,bServerSide:!1,bSort:!0,bSortMulti:!0,bSortCellsTop:!1,bSortClasses:!0,bStateSave:!1,fnCreatedRow:null,fnDrawCallback:null,fnFooterCallback:null,fnFormatNumber:function(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,this.oLanguage.sThousands)},fnHeaderCallback:null,fnInfoCallback:null,fnInitComplete:null,fnPreDrawCallback:null,fnRowCallback:null,fnServerData:null,fnServerParams:null,fnStateLoadCallback:function(t){try{return JSON.parse((-1===t.iStateDuration?sessionStorage:localStorage).getItem("DataTables_"+t.sInstance+"_"+location.pathname))}catch(t){return{}}},fnStateLoadParams:null,fnStateLoaded:null,fnStateSaveCallback:function(t,e){try{(-1===t.iStateDuration?sessionStorage:localStorage).setItem("DataTables_"+t.sInstance+"_"+location.pathname,JSON.stringify(e))}catch(t){}},fnStateSaveParams:null,iStateDuration:7200,iDeferLoading:null,iDisplayLength:10,iDisplayStart:0,iTabIndex:0,oClasses:{},oLanguage:{oAria:{sSortAscending:": activate to sort column ascending",sSortDescending:": activate to sort column descending"},oPaginate:{sFirst:"First",sLast:"Last",sNext:"Next",sPrevious:"Previous"},sEmptyTable:"No data available in table",sInfo:"Showing _START_ to _END_ of _TOTAL_ entries",sInfoEmpty:"Showing 0 to 0 of 0 entries",sInfoFiltered:"(filtered from _MAX_ total entries)",sInfoPostFix:"",sDecimal:"",sThousands:",",sLengthMenu:"Show _MENU_ entries",sLoadingRecords:"Loading...",sProcessing:"Processing...",sSearch:"Search:",sSearchPlaceholder:"",sUrl:"",sZeroRecords:"No matching records found"},oSearch:P.extend({},w.models.oSearch),sAjaxDataProp:"data",sAjaxSource:null,sDom:"lfrtip",searchDelay:null,sPaginationType:"simple_numbers",sScrollX:"",sScrollXInner:"",sScrollY:"",sServerMethod:"GET",renderer:null,rowId:"DT_RowId"},_(w.defaults),w.defaults.column={aDataSort:null,iDataSort:-1,asSorting:["asc","desc"],bSearchable:!0,bSortable:!0,bVisible:!0,fnCreatedCell:null,mData:null,mRender:null,sCellType:"td",sClass:"",sContentPadding:"",sDefaultContent:null,sName:"",sSortDataType:"std",sTitle:null,sType:null,sWidth:null},_(w.defaults.column),w.models.oSettings={oFeatures:{bAutoWidth:null,bDeferRender:null,bFilter:null,bInfo:null,bLengthChange:null,bPaginate:null,bProcessing:null,bServerSide:null,bSort:null,bSortMulti:null,bSortClasses:null,bStateSave:null},oScroll:{bCollapse:null,iBarWidth:0,sX:null,sXInner:null,sY:null},oLanguage:{fnInfoCallback:null},oBrowser:{bScrollOversize:!1,bScrollbarLeft:!1,bBounding:!1,barWidth:0},ajax:null,aanFeatures:[],aoData:[],aiDisplay:[],aiDisplayMaster:[],aIds:{},aoColumns:[],aoHeader:[],aoFooter:[],oPreviousSearch:{},aoPreSearchCols:[],aaSorting:null,aaSortingFixed:[],asStripeClasses:null,asDestroyStripes:[],sDestroyWidth:0,aoRowCallback:[],aoHeaderCallback:[],aoFooterCallback:[],aoDrawCallback:[],aoRowCreatedCallback:[],aoPreDrawCallback:[],aoInitComplete:[],aoStateSaveParams:[],aoStateLoadParams:[],aoStateLoaded:[],sTableId:"",nTable:null,nTHead:null,nTFoot:null,nTBody:null,nTableWrapper:null,bDeferLoading:!1,bInitialised:!1,aoOpenRows:[],sDom:null,searchDelay:null,sPaginationType:"two_button",iStateDuration:0,aoStateSave:[],aoStateLoad:[],oSavedState:null,oLoadedState:null,sAjaxSource:null,sAjaxDataProp:null,jqXHR:null,json:N,oAjaxData:N,fnServerData:null,aoServerParams:[],sServerMethod:null,fnFormatNumber:null,aLengthMenu:null,iDraw:0,bDrawing:!1,iDrawError:-1,_iDisplayLength:10,_iDisplayStart:0,_iRecordsTotal:0,_iRecordsDisplay:0,oClasses:{},bFiltered:!1,bSorted:!1,bSortCellsTop:null,oInit:null,aoDestroyCallback:[],fnRecordsTotal:function(){return"ssp"==be(this)?+this._iRecordsTotal:this.aiDisplayMaster.length},fnRecordsDisplay:function(){return"ssp"==be(this)?+this._iRecordsDisplay:this.aiDisplay.length},fnDisplayEnd:function(){var t=this._iDisplayLength,e=this._iDisplayStart,n=e+t,a=this.aiDisplay.length,r=this.oFeatures,o=r.bPaginate;return r.bServerSide?!1===o||-1===t?e+a:Math.min(e+t,this._iRecordsDisplay):!o||a<n||-1===t?a:n},oInstance:null,sInstance:null,iTabIndex:0,nScrollHead:null,nScrollFoot:null,aLastSort:[],oPlugins:{},rowIdFn:null,rowId:null},w.ext=p={buttons:{},classes:{},builder:"-source-",errMode:"alert",feature:[],search:[],selector:{cell:[],column:[],row:[]},internal:{},legacy:{ajax:null},pager:{},renderer:{pageButton:{},header:{}},order:{},type:{detect:[],search:{},order:{}},_unique:0,fnVersionCheck:w.fnVersionCheck,iApiIndex:0,oJUIClasses:{},sVersion:w.version},P.extend(p,{afnFiltering:p.search,aTypes:p.type.detect,ofnSearch:p.type.search,oSort:p.type.order,afnSortData:p.order,aoFeatures:p.feature,oApi:p.internal,oStdClasses:p.classes,oPagination:p.pager}),P.extend(w.ext.classes,{sTable:"dataTable",sNoFooter:"no-footer",sPageButton:"paginate_button",sPageButtonActive:"current",sPageButtonDisabled:"disabled",sStripeOdd:"odd",sStripeEven:"even",sRowEmpty:"dataTables_empty",sWrapper:"dataTables_wrapper",sFilter:"dataTables_filter",sInfo:"dataTables_info",sPaging:"dataTables_paginate paging_",sLength:"dataTables_length",sProcessing:"dataTables_processing",sSortAsc:"sorting_asc",sSortDesc:"sorting_desc",sSortable:"sorting",sSortableAsc:"sorting_desc_disabled",sSortableDesc:"sorting_asc_disabled",sSortableNone:"sorting_disabled",sSortColumn:"sorting_",sFilterInput:"",sLengthSelect:"",sScrollWrapper:"dataTables_scroll",sScrollHead:"dataTables_scrollHead",sScrollHeadInner:"dataTables_scrollHeadInner",sScrollBody:"dataTables_scrollBody",sScrollFoot:"dataTables_scrollFoot",sScrollFootInner:"dataTables_scrollFootInner",sHeaderTH:"",sFooterTH:"",sSortJUIAsc:"",sSortJUIDesc:"",sSortJUI:"",sSortJUIAscAllowed:"",sSortJUIDescAllowed:"",sSortJUIWrapper:"",sSortIcon:"",sJUIHeader:"",sJUIFooter:""});var Pe=w.ext.pager;function je(t,e){var n=[],a=Pe.numbers_length,r=Math.floor(a/2);return e<=a?n=d(0,e):t<=r?((n=d(0,a-2)).push("ellipsis"),n.push(e-1)):(e-1-r<=t?(n=d(e-(a-2),e)).splice(0,0,"ellipsis"):((n=d(t-r+2,t+r-1)).push("ellipsis"),n.push(e-1),n.splice(0,0,"ellipsis")),n.splice(0,0,0)),n.DT_el="span",n}P.extend(Pe,{simple:function(t,e){return["previous","next"]},full:function(t,e){return["first","previous","next","last"]},numbers:function(t,e){return[je(t,e)]},simple_numbers:function(t,e){return["previous",je(t,e),"next"]},full_numbers:function(t,e){return["first","previous",je(t,e),"next","last"]},first_last_numbers:function(t,e){return["first",je(t,e),"last"]},_numbers:je,numbers_length:7}),P.extend(!0,w.ext.renderer,{pageButton:{_:function(u,t,c,e,f,d){var h,p,n,g=u.oClasses,b=u.oLanguage.oPaginate,S=u.oLanguage.oAria.paginate||{},m=0,v=function(t,e){for(var n,a,r=g.sPageButtonDisabled,o=function(t){Mt(u,t.data.action,!0)},i=0,l=e.length;i<l;i++)if(n=e[i],Array.isArray(n)){var s=P("<"+(n.DT_el||"div")+"/>").appendTo(t);v(s,n)}else{switch(h=null,p=n,a=u.iTabIndex,n){case"ellipsis":t.append('<span class="ellipsis">…</span>');break;case"first":h=b.sFirst,0===f&&(a=-1,p+=" "+r);break;case"previous":h=b.sPrevious,0===f&&(a=-1,p+=" "+r);break;case"next":h=b.sNext,0!==d&&f!==d-1||(a=-1,p+=" "+r);break;case"last":h=b.sLast,0!==d&&f!==d-1||(a=-1,p+=" "+r);break;default:h=u.fnFormatNumber(n+1),p=f===n?g.sPageButtonActive:""}null!==h&&(fe(P("<a>",{class:g.sPageButton+" "+p,"aria-controls":u.sTableId,"aria-label":S[n],"data-dt-idx":m,tabindex:a,id:0===c&&"string"==typeof n?u.sTableId+"_"+n:null}).html(h).appendTo(t),{action:n},o),m++)}};try{n=P(t).find(y.activeElement).data("dt-idx")}catch(t){}v(P(t).empty(),e),n!==N&&P(t).find("[data-dt-idx="+n+"]").trigger("focus")}}}),P.extend(w.ext.type.detect,[function(t,e){e=e.oLanguage.sDecimal;return o(t,e)?"num"+e:null},function(t,e){if(t&&!(t instanceof Date)&&!s.test(t))return null;var n=Date.parse(t);return null!==n&&!isNaN(n)||h(t)?"date":null},function(t,e){e=e.oLanguage.sDecimal;return o(t,e,!0)?"num-fmt"+e:null},function(t,e){e=e.oLanguage.sDecimal;return n(t,e)?"html-num"+e:null},function(t,e){e=e.oLanguage.sDecimal;return n(t,e,!0)?"html-num-fmt"+e:null},function(t,e){return h(t)||"string"==typeof t&&-1!==t.indexOf("<")?"html":null}]),P.extend(w.ext.type.search,{html:function(t){return h(t)?t:"string"==typeof t?t.replace(i," ").replace(l,""):""},string:function(t){return!h(t)&&"string"==typeof t?t.replace(i," "):t}});var Ne=function(t,e,n,a){return 0===t||t&&"-"!==t?(e&&(t=r(t,e)),t.replace&&(n&&(t=t.replace(n,"")),a&&(t=t.replace(a,""))),+t):-1/0};function He(n){P.each({num:function(t){return Ne(t,n)},"num-fmt":function(t){return Ne(t,n,c)},"html-num":function(t){return Ne(t,n,l)},"html-num-fmt":function(t){return Ne(t,n,l,c)}},function(t,e){p.type.order[t+n+"-pre"]=e,t.match(/^html\-/)&&(p.type.search[t+n]=p.type.search.html)})}P.extend(p.type.order,{"date-pre":function(t){t=Date.parse(t);return isNaN(t)?-1/0:t},"html-pre":function(t){return h(t)?"":t.replace?t.replace(/<.*?>/g,"").toLowerCase():t+""},"string-pre":function(t){return h(t)?"":"string"==typeof t?t.toLowerCase():t.toString?t.toString():""},"string-asc":function(t,e){return t<e?-1:e<t?1:0},"string-desc":function(t,e){return t<e?1:e<t?-1:0}}),He(""),P.extend(!0,w.ext.renderer,{header:{_:function(r,o,i,l){P(r.nTable).on("order.dt.DT",function(t,e,n,a){r===e&&(e=i.idx,o.removeClass(l.sSortAsc+" "+l.sSortDesc).addClass("asc"==a[e]?l.sSortAsc:"desc"==a[e]?l.sSortDesc:i.sSortingClass))})},jqueryui:function(r,o,i,l){P("<div/>").addClass(l.sSortJUIWrapper).append(o.contents()).append(P("<span/>").addClass(l.sSortIcon+" "+i.sSortingClassJUI)).appendTo(o),P(r.nTable).on("order.dt.DT",function(t,e,n,a){r===e&&(e=i.idx,o.removeClass(l.sSortAsc+" "+l.sSortDesc).addClass("asc"==a[e]?l.sSortAsc:"desc"==a[e]?l.sSortDesc:i.sSortingClass),o.find("span."+l.sSortIcon).removeClass(l.sSortJUIAsc+" "+l.sSortJUIDesc+" "+l.sSortJUI+" "+l.sSortJUIAscAllowed+" "+l.sSortJUIDescAllowed).addClass("asc"==a[e]?l.sSortJUIAsc:"desc"==a[e]?l.sSortJUIDesc:i.sSortingClassJUI))})}}});function Oe(t){return Array.isArray(t)&&(t=t.join(",")),"string"==typeof t?t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""):t}function ke(e){return function(){var t=[le(this[w.ext.iApiIndex])].concat(Array.prototype.slice.call(arguments));return w.ext.internal[e].apply(this,t)}}return w.render={number:function(a,r,o,i,l){return{display:function(t){if("number"!=typeof t&&"string"!=typeof t)return t;var e=t<0?"-":"",n=parseFloat(t);if(isNaN(n))return Oe(t);n=n.toFixed(o),t=Math.abs(n);n=parseInt(t,10),t=o?r+(t-n).toFixed(o).substring(2):"";return 0===n&&0===parseFloat(t)&&(e=""),e+(i||"")+n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,a)+t+(l||"")}}},text:function(){return{display:Oe,filter:Oe}}},P.extend(w.ext.internal,{_fnExternApiFunc:ke,_fnBuildAjax:ht,_fnAjaxUpdate:pt,_fnAjaxParameters:gt,_fnAjaxUpdateDraw:bt,_fnAjaxDataSrc:St,_fnAddColumn:R,_fnColumnOptions:O,_fnAdjustColumnSizing:k,_fnVisibleToColumnIndex:M,_fnColumnIndexToVisible:W,_fnVisbleColumns:E,_fnGetColumns:B,_fnColumnTypes:U,_fnApplyColumnDefs:X,_fnHungarianMap:_,_fnCamelToHungarian:T,_fnLanguageCompat:x,_fnBrowserDetect:F,_fnAddData:V,_fnAddTr:J,_fnNodeToDataIndex:function(t,e){return e._DT_RowIndex!==N?e._DT_RowIndex:null},_fnNodeToColumnIndex:function(t,e,n){return P.inArray(n,t.aoData[e].anCells)},_fnGetCellData:q,_fnSetCellData:G,_fnSplitObjNotation:Y,_fnGetObjectDataFn:Z,_fnSetObjectDataFn:K,_fnGetDataMaster:Q,_fnClearTable:tt,_fnDeleteIndex:et,_fnInvalidate:nt,_fnGetRowElements:at,_fnCreateTr:rt,_fnBuildHead:it,_fnDrawHead:lt,_fnDraw:st,_fnReDraw:ut,_fnAddOptionsHtml:ct,_fnDetectHeader:ft,_fnGetUniqueThs:dt,_fnFeatureHtmlFilter:mt,_fnFilterComplete:vt,_fnFilterCustom:yt,_fnFilterColumn:Dt,_fnFilter:_t,_fnFilterCreateSearch:Ct,_fnEscapeRegex:wt,_fnFilterData:At,_fnFeatureHtmlInfo:Lt,_fnUpdateInfo:Rt,_fnInfoMacros:Pt,_fnInitialise:jt,_fnInitComplete:Nt,_fnLengthChange:Ht,_fnFeatureHtmlLength:Ot,_fnFeatureHtmlPaginate:kt,_fnPageChange:Mt,_fnFeatureHtmlProcessing:Wt,_fnProcessingDisplay:Et,_fnFeatureHtmlTable:Bt,_fnScrollDraw:Ut,_fnApplyToChildren:Xt,_fnCalculateColumnWidths:Jt,_fnThrottle:qt,_fnConvertToWidth:Gt,_fnGetWidestNode:$t,_fnGetMaxLenString:zt,_fnStringToCss:Yt,_fnSortFlatten:Zt,_fnSort:Kt,_fnSortAria:Qt,_fnSortListener:te,_fnSortAttachListener:ee,_fnSortingClasses:ne,_fnSortData:ae,_fnSaveState:re,_fnLoadState:oe,_fnImplementState:ie,_fnSettingsFromNode:le,_fnLog:se,_fnMap:ue,_fnBindAction:fe,_fnCallbackReg:de,_fnCallbackFire:he,_fnLengthOverflow:pe,_fnRenderer:ge,_fnDataSource:be,_fnRowAttributes:ot,_fnExtend:ce,_fnCalculateEnd:function(){}}),((P.fn.dataTable=w).$=P).fn.dataTableSettings=w.settings,P.fn.dataTableExt=w.ext,P.fn.DataTable=function(t){return P(this).dataTable(t).api()},P.each(w,function(t,e){P.fn.DataTable[t]=e}),w});
|
@@ -0,0 +1,345 @@
|
|
1
|
+
/* Flot plugin for drawing all elements of a plot on the canvas.
|
2
|
+
|
3
|
+
Copyright (c) 2007-2014 IOLA and Ole Laursen.
|
4
|
+
Licensed under the MIT license.
|
5
|
+
|
6
|
+
Flot normally produces certain elements, like axis labels and the legend, using
|
7
|
+
HTML elements. This permits greater interactivity and customization, and often
|
8
|
+
looks better, due to cross-browser canvas text inconsistencies and limitations.
|
9
|
+
|
10
|
+
It can also be desirable to render the plot entirely in canvas, particularly
|
11
|
+
if the goal is to save it as an image, or if Flot is being used in a context
|
12
|
+
where the HTML DOM does not exist, as is the case within Node.js. This plugin
|
13
|
+
switches out Flot's standard drawing operations for canvas-only replacements.
|
14
|
+
|
15
|
+
Currently the plugin supports only axis labels, but it will eventually allow
|
16
|
+
every element of the plot to be rendered directly to canvas.
|
17
|
+
|
18
|
+
The plugin supports these options:
|
19
|
+
|
20
|
+
{
|
21
|
+
canvas: boolean
|
22
|
+
}
|
23
|
+
|
24
|
+
The "canvas" option controls whether full canvas drawing is enabled, making it
|
25
|
+
possible to toggle on and off. This is useful when a plot uses HTML text in the
|
26
|
+
browser, but needs to redraw with canvas text when exporting as an image.
|
27
|
+
|
28
|
+
*/
|
29
|
+
|
30
|
+
(function($) {
|
31
|
+
|
32
|
+
var options = {
|
33
|
+
canvas: true
|
34
|
+
};
|
35
|
+
|
36
|
+
var render, getTextInfo, addText;
|
37
|
+
|
38
|
+
// Cache the prototype hasOwnProperty for faster access
|
39
|
+
|
40
|
+
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
41
|
+
|
42
|
+
function init(plot, classes) {
|
43
|
+
|
44
|
+
var Canvas = classes.Canvas;
|
45
|
+
|
46
|
+
// We only want to replace the functions once; the second time around
|
47
|
+
// we would just get our new function back. This whole replacing of
|
48
|
+
// prototype functions is a disaster, and needs to be changed ASAP.
|
49
|
+
|
50
|
+
if (render == null) {
|
51
|
+
getTextInfo = Canvas.prototype.getTextInfo,
|
52
|
+
addText = Canvas.prototype.addText,
|
53
|
+
render = Canvas.prototype.render;
|
54
|
+
}
|
55
|
+
|
56
|
+
// Finishes rendering the canvas, including overlaid text
|
57
|
+
|
58
|
+
Canvas.prototype.render = function() {
|
59
|
+
|
60
|
+
if (!plot.getOptions().canvas) {
|
61
|
+
return render.call(this);
|
62
|
+
}
|
63
|
+
|
64
|
+
var context = this.context,
|
65
|
+
cache = this._textCache;
|
66
|
+
|
67
|
+
// For each text layer, render elements marked as active
|
68
|
+
|
69
|
+
context.save();
|
70
|
+
context.textBaseline = "middle";
|
71
|
+
|
72
|
+
for (var layerKey in cache) {
|
73
|
+
if (hasOwnProperty.call(cache, layerKey)) {
|
74
|
+
var layerCache = cache[layerKey];
|
75
|
+
for (var styleKey in layerCache) {
|
76
|
+
if (hasOwnProperty.call(layerCache, styleKey)) {
|
77
|
+
var styleCache = layerCache[styleKey],
|
78
|
+
updateStyles = true;
|
79
|
+
for (var key in styleCache) {
|
80
|
+
if (hasOwnProperty.call(styleCache, key)) {
|
81
|
+
|
82
|
+
var info = styleCache[key],
|
83
|
+
positions = info.positions,
|
84
|
+
lines = info.lines;
|
85
|
+
|
86
|
+
// Since every element at this level of the cache have the
|
87
|
+
// same font and fill styles, we can just change them once
|
88
|
+
// using the values from the first element.
|
89
|
+
|
90
|
+
if (updateStyles) {
|
91
|
+
context.fillStyle = info.font.color;
|
92
|
+
context.font = info.font.definition;
|
93
|
+
updateStyles = false;
|
94
|
+
}
|
95
|
+
|
96
|
+
for (var i = 0, position; position = positions[i]; i++) {
|
97
|
+
if (position.active) {
|
98
|
+
for (var j = 0, line; line = position.lines[j]; j++) {
|
99
|
+
context.fillText(lines[j].text, line[0], line[1]);
|
100
|
+
}
|
101
|
+
} else {
|
102
|
+
positions.splice(i--, 1);
|
103
|
+
}
|
104
|
+
}
|
105
|
+
|
106
|
+
if (positions.length == 0) {
|
107
|
+
delete styleCache[key];
|
108
|
+
}
|
109
|
+
}
|
110
|
+
}
|
111
|
+
}
|
112
|
+
}
|
113
|
+
}
|
114
|
+
}
|
115
|
+
|
116
|
+
context.restore();
|
117
|
+
};
|
118
|
+
|
119
|
+
// Creates (if necessary) and returns a text info object.
|
120
|
+
//
|
121
|
+
// When the canvas option is set, the object looks like this:
|
122
|
+
//
|
123
|
+
// {
|
124
|
+
// width: Width of the text's bounding box.
|
125
|
+
// height: Height of the text's bounding box.
|
126
|
+
// positions: Array of positions at which this text is drawn.
|
127
|
+
// lines: [{
|
128
|
+
// height: Height of this line.
|
129
|
+
// widths: Width of this line.
|
130
|
+
// text: Text on this line.
|
131
|
+
// }],
|
132
|
+
// font: {
|
133
|
+
// definition: Canvas font property string.
|
134
|
+
// color: Color of the text.
|
135
|
+
// },
|
136
|
+
// }
|
137
|
+
//
|
138
|
+
// The positions array contains objects that look like this:
|
139
|
+
//
|
140
|
+
// {
|
141
|
+
// active: Flag indicating whether the text should be visible.
|
142
|
+
// lines: Array of [x, y] coordinates at which to draw the line.
|
143
|
+
// x: X coordinate at which to draw the text.
|
144
|
+
// y: Y coordinate at which to draw the text.
|
145
|
+
// }
|
146
|
+
|
147
|
+
Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) {
|
148
|
+
|
149
|
+
if (!plot.getOptions().canvas) {
|
150
|
+
return getTextInfo.call(this, layer, text, font, angle, width);
|
151
|
+
}
|
152
|
+
|
153
|
+
var textStyle, layerCache, styleCache, info;
|
154
|
+
|
155
|
+
// Cast the value to a string, in case we were given a number
|
156
|
+
|
157
|
+
text = "" + text;
|
158
|
+
|
159
|
+
// If the font is a font-spec object, generate a CSS definition
|
160
|
+
|
161
|
+
if (typeof font === "object") {
|
162
|
+
textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family;
|
163
|
+
} else {
|
164
|
+
textStyle = font;
|
165
|
+
}
|
166
|
+
|
167
|
+
// Retrieve (or create) the cache for the text's layer and styles
|
168
|
+
|
169
|
+
layerCache = this._textCache[layer];
|
170
|
+
|
171
|
+
if (layerCache == null) {
|
172
|
+
layerCache = this._textCache[layer] = {};
|
173
|
+
}
|
174
|
+
|
175
|
+
styleCache = layerCache[textStyle];
|
176
|
+
|
177
|
+
if (styleCache == null) {
|
178
|
+
styleCache = layerCache[textStyle] = {};
|
179
|
+
}
|
180
|
+
|
181
|
+
info = styleCache[text];
|
182
|
+
|
183
|
+
if (info == null) {
|
184
|
+
|
185
|
+
var context = this.context;
|
186
|
+
|
187
|
+
// If the font was provided as CSS, create a div with those
|
188
|
+
// classes and examine it to generate a canvas font spec.
|
189
|
+
|
190
|
+
if (typeof font !== "object") {
|
191
|
+
|
192
|
+
var element = $("<div> </div>")
|
193
|
+
.css("position", "absolute")
|
194
|
+
.addClass(typeof font === "string" ? font : null)
|
195
|
+
.appendTo(this.getTextLayer(layer));
|
196
|
+
|
197
|
+
font = {
|
198
|
+
lineHeight: element.height(),
|
199
|
+
style: element.css("font-style"),
|
200
|
+
variant: element.css("font-variant"),
|
201
|
+
weight: element.css("font-weight"),
|
202
|
+
family: element.css("font-family"),
|
203
|
+
color: element.css("color")
|
204
|
+
};
|
205
|
+
|
206
|
+
// Setting line-height to 1, without units, sets it equal
|
207
|
+
// to the font-size, even if the font-size is abstract,
|
208
|
+
// like 'smaller'. This enables us to read the real size
|
209
|
+
// via the element's height, working around browsers that
|
210
|
+
// return the literal 'smaller' value.
|
211
|
+
|
212
|
+
font.size = element.css("line-height", 1).height();
|
213
|
+
|
214
|
+
element.remove();
|
215
|
+
}
|
216
|
+
|
217
|
+
textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family;
|
218
|
+
|
219
|
+
// Create a new info object, initializing the dimensions to
|
220
|
+
// zero so we can count them up line-by-line.
|
221
|
+
|
222
|
+
info = styleCache[text] = {
|
223
|
+
width: 0,
|
224
|
+
height: 0,
|
225
|
+
positions: [],
|
226
|
+
lines: [],
|
227
|
+
font: {
|
228
|
+
definition: textStyle,
|
229
|
+
color: font.color
|
230
|
+
}
|
231
|
+
};
|
232
|
+
|
233
|
+
context.save();
|
234
|
+
context.font = textStyle;
|
235
|
+
|
236
|
+
// Canvas can't handle multi-line strings; break on various
|
237
|
+
// newlines, including HTML brs, to build a list of lines.
|
238
|
+
// Note that we could split directly on regexps, but IE < 9 is
|
239
|
+
// broken; revisit when we drop IE 7/8 support.
|
240
|
+
|
241
|
+
var lines = (text + "").replace(/<br ?\/?>|\r\n|\r/g, "\n").split("\n");
|
242
|
+
|
243
|
+
for (var i = 0; i < lines.length; ++i) {
|
244
|
+
|
245
|
+
var lineText = lines[i],
|
246
|
+
measured = context.measureText(lineText);
|
247
|
+
|
248
|
+
info.width = Math.max(measured.width, info.width);
|
249
|
+
info.height += font.lineHeight;
|
250
|
+
|
251
|
+
info.lines.push({
|
252
|
+
text: lineText,
|
253
|
+
width: measured.width,
|
254
|
+
height: font.lineHeight
|
255
|
+
});
|
256
|
+
}
|
257
|
+
|
258
|
+
context.restore();
|
259
|
+
}
|
260
|
+
|
261
|
+
return info;
|
262
|
+
};
|
263
|
+
|
264
|
+
// Adds a text string to the canvas text overlay.
|
265
|
+
|
266
|
+
Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) {
|
267
|
+
|
268
|
+
if (!plot.getOptions().canvas) {
|
269
|
+
return addText.call(this, layer, x, y, text, font, angle, width, halign, valign);
|
270
|
+
}
|
271
|
+
|
272
|
+
var info = this.getTextInfo(layer, text, font, angle, width),
|
273
|
+
positions = info.positions,
|
274
|
+
lines = info.lines;
|
275
|
+
|
276
|
+
// Text is drawn with baseline 'middle', which we need to account
|
277
|
+
// for by adding half a line's height to the y position.
|
278
|
+
|
279
|
+
y += info.height / lines.length / 2;
|
280
|
+
|
281
|
+
// Tweak the initial y-position to match vertical alignment
|
282
|
+
|
283
|
+
if (valign == "middle") {
|
284
|
+
y = Math.round(y - info.height / 2);
|
285
|
+
} else if (valign == "bottom") {
|
286
|
+
y = Math.round(y - info.height);
|
287
|
+
} else {
|
288
|
+
y = Math.round(y);
|
289
|
+
}
|
290
|
+
|
291
|
+
// FIXME: LEGACY BROWSER FIX
|
292
|
+
// AFFECTS: Opera < 12.00
|
293
|
+
|
294
|
+
// Offset the y coordinate, since Opera is off pretty
|
295
|
+
// consistently compared to the other browsers.
|
296
|
+
|
297
|
+
if (!!(window.opera && window.opera.version().split(".")[0] < 12)) {
|
298
|
+
y -= 2;
|
299
|
+
}
|
300
|
+
|
301
|
+
// Determine whether this text already exists at this position.
|
302
|
+
// If so, mark it for inclusion in the next render pass.
|
303
|
+
|
304
|
+
for (var i = 0, position; position = positions[i]; i++) {
|
305
|
+
if (position.x == x && position.y == y) {
|
306
|
+
position.active = true;
|
307
|
+
return;
|
308
|
+
}
|
309
|
+
}
|
310
|
+
|
311
|
+
// If the text doesn't exist at this position, create a new entry
|
312
|
+
|
313
|
+
position = {
|
314
|
+
active: true,
|
315
|
+
lines: [],
|
316
|
+
x: x,
|
317
|
+
y: y
|
318
|
+
};
|
319
|
+
|
320
|
+
positions.push(position);
|
321
|
+
|
322
|
+
// Fill in the x & y positions of each line, adjusting them
|
323
|
+
// individually for horizontal alignment.
|
324
|
+
|
325
|
+
for (var i = 0, line; line = lines[i]; i++) {
|
326
|
+
if (halign == "center") {
|
327
|
+
position.lines.push([Math.round(x - line.width / 2), y]);
|
328
|
+
} else if (halign == "right") {
|
329
|
+
position.lines.push([Math.round(x - line.width), y]);
|
330
|
+
} else {
|
331
|
+
position.lines.push([Math.round(x), y]);
|
332
|
+
}
|
333
|
+
y += line.height;
|
334
|
+
}
|
335
|
+
};
|
336
|
+
}
|
337
|
+
|
338
|
+
$.plot.plugins.push({
|
339
|
+
init: init,
|
340
|
+
options: options,
|
341
|
+
name: "canvas",
|
342
|
+
version: "1.0"
|
343
|
+
});
|
344
|
+
|
345
|
+
})(jQuery);
|
@@ -0,0 +1 @@
|
|
1
|
+
!function(c){var u,d,v,y=Object.prototype.hasOwnProperty;c.plot.plugins.push({init:function(g,t){t=t.Canvas,null==u&&(d=t.prototype.getTextInfo,v=t.prototype.addText,u=t.prototype.render),t.prototype.render=function(){if(!g.getOptions().canvas)return u.call(this);var t,e=this.context,i=this._textCache;for(t in e.save(),e.textBaseline="middle",i)if(y.call(i,t)){var n,o=i[t];for(n in o)if(y.call(o,n)){var s,r=o[n],a=!0;for(s in r)if(y.call(r,s)){var l=r[s],h=l.positions,f=l.lines;a&&(e.fillStyle=l.font.color,e.font=l.font.definition,a=!1);for(var p,c=0;p=h[c];c++)if(p.active)for(var d,v=0;d=p.lines[v];v++)e.fillText(f[v].text,d[0],d[1]);else h.splice(c--,1);0==h.length&&delete r[s]}}}e.restore()},t.prototype.getTextInfo=function(t,e,i,n,o){if(!g.getOptions().canvas)return d.call(this,t,e,i,n,o);var s,r;if(e=""+e,s="object"==typeof i?i.style+" "+i.variant+" "+i.weight+" "+i.size+"px "+i.family:i,null==(n=this._textCache[t])&&(n=this._textCache[t]={}),null==(o=n[s])&&(o=n[s]={}),null==(r=o[e])){var a=this.context;"object"!=typeof i&&((i={lineHeight:(t=c("<div> </div>").css("position","absolute").addClass("string"==typeof i?i:null).appendTo(this.getTextLayer(t))).height(),style:t.css("font-style"),variant:t.css("font-variant"),weight:t.css("font-weight"),family:t.css("font-family"),color:t.css("color")}).size=t.css("line-height",1).height(),t.remove()),s=i.style+" "+i.variant+" "+i.weight+" "+i.size+"px "+i.family,r=o[e]={width:0,height:0,positions:[],lines:[],font:{definition:s,color:i.color}},a.save(),a.font=s;for(var l=(e+"").replace(/<br ?\/?>|\r\n|\r/g,"\n").split("\n"),h=0;h<l.length;++h){var f=l[h],p=a.measureText(f);r.width=Math.max(p.width,r.width),r.height+=i.lineHeight,r.lines.push({text:f,width:p.width,height:i.lineHeight})}a.restore()}return r},t.prototype.addText=function(t,e,i,n,o,s,r,a,l){if(!g.getOptions().canvas)return v.call(this,t,e,i,n,o,s,r,a,l);var r=this.getTextInfo(t,n,o,s,r),h=r.positions,f=r.lines;i+=r.height/f.length/2,i="middle"==l?Math.round(i-r.height/2):"bottom"==l?Math.round(i-r.height):Math.round(i),window.opera&&window.opera.version().split(".")[0]<12&&(i-=2);for(var p,c=0;p=h[c];c++)if(p.x==e&&p.y==i)return void(p.active=!0);p={active:!0,lines:[],x:e,y:i},h.push(p);for(var d,c=0;d=f[c];c++)"center"==a?p.lines.push([Math.round(e-d.width/2),i]):"right"==a?p.lines.push([Math.round(e-d.width),i]):p.lines.push([Math.round(e),i]),i+=d.height}},options:{canvas:!0},name:"canvas",version:"1.0"})}(jQuery);
|